파일명에서 마지막 점 위치 찾기
자바스크립트 코딩테스트 문제로 string-last-position-methods 주제를 연습해보세요. 난이도는 easy이며, 브라우저에서 바로 JavaScript로 풀이를 실행할 수 있습니다.
파일명 문자열에서 마지막 마침표(.)가 있는 위치를 찾아 반환하세요.
오늘의 메서드
- 오늘 배울 메서드는
String.lastIndexOf()입니다. - 문자열에서 특정 문자나 문자열이 마지막으로 등장하는 위치를 찾을 때 사용합니다.
메서드 설명
lastIndexOf()는 문자열의 뒤쪽부터 검색해 찾는 값이 마지막으로 나타나는 인덱스를 반환합니다.
찾는 값이 문자열 안에 없으면 -1을 반환합니다. 원본 문자열은 바뀌지 않습니다.
기본 문법
str.lastIndexOf(searchValue)
searchValue: 찾고 싶은 문자 또는 문자열입니다.- 반환값은 마지막으로 발견된 위치의 인덱스입니다.
- 찾지 못하면
-1을 반환합니다.
사용 예시
"report.final.pdf".lastIndexOf("."); // 12
"archive".lastIndexOf("."); // -1
".env.local".lastIndexOf("."); // 4
주의할 점
- 문자열 인덱스는 0부터 시작합니다.
lastIndexOf()는 처음 위치가 아니라 마지막 위치를 반환합니다.- 찾는 값이 없을 때는
0이나 빈 문자열이 아니라-1입니다. lastIndexOf()는 원본 문자열을 수정하지 않습니다.
제한사항
filename은 길이 1 이상 100 이하의 문자열입니다.filename은 영문자, 숫자, 하이픈, 밑줄, 마침표로만 이루어져 있습니다.- 반환값은 마지막 마침표의 인덱스입니다.
- 마침표가 없으면
-1을 반환합니다.
예시
- 입력:
"report.final.pdf"-> 출력:12 - 입력:
"archive"-> 출력:-1 - 입력:
".env.local"-> 출력:4 - 입력:
"photo.2026.07.13.jpg"-> 출력:16
힌트
- 확장자를 구분할 때는 보통 파일명에서 마지막 마침표 위치가 중요합니다.
- 앞에서부터 찾는
indexOf()가 아니라 뒤쪽 기준으로 찾는 메서드를 떠올려 보세요.
해설
이 문제는 문자열 안에서 특정 문자의 마지막 위치를 찾는 연습입니다.
파일명에는 마침표가 여러 번 들어갈 수 있습니다. 예를 들어 "report.final.pdf"에서는 마침표가 두 번 나오지만, 확장자 앞의 구분자는 마지막 마침표입니다. 이럴 때 filename.lastIndexOf(".")를 사용하면 마지막 마침표의 인덱스를 바로 얻을 수 있습니다.
function findLastFileDotPosition(filename) {
return filename.lastIndexOf(".");
}
마침표가 없는 "archive" 같은 문자열에서는 lastIndexOf(".")가 자동으로 -1을 반환합니다. 그래서 별도의 조건문 없이도 문제 요구사항을 만족할 수 있습니다.
코드 작성
starter code를 바탕으로 함수를 완성한 뒤 예제 테스트를 실행해보세요.
JavaScript
에디터 로딩 중...
커스텀 테스트
함수 인자를 JSON 배열 형태로 입력하세요. 예: [3, 5], [[1, 2, 3]]
아직 실행하지 않았습니다.
실행 결과
아직 실행하지 않았습니다.
예제 테스트를 실행하면 여기에서 결과를 확인할 수 있습니다.
댓글
문제 풀이 아이디어, 질문, 반례를 자유롭게 나눠보세요.