파일명에서 마지막 점 위치 찾기

자바스크립트 코딩테스트 문제로 string-last-position-methods 주제를 연습해보세요. 난이도는 easy이며, 브라우저에서 바로 JavaScript로 풀이를 실행할 수 있습니다.

js-basic easy string-last-position-methods 함수명: findLastFileDotPosition 제한 시간: 200ms

파일명 문자열에서 마지막 마침표(.)가 있는 위치를 찾아 반환하세요.

오늘의 메서드

  • 오늘 배울 메서드는 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]]

아직 실행하지 않았습니다.

실행 결과

아직 실행하지 않았습니다.

예제 테스트를 실행하면 여기에서 결과를 확인할 수 있습니다.

댓글

문제 풀이 아이디어, 질문, 반례를 자유롭게 나눠보세요.