Programmers

[프로그래머스][JS] 전화번호 목록

winter17 2023. 8. 10. 10:20

https://school.programmers.co.kr/learn/courses/30/lessons/42577

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이 과정

function solution(phone_book) {
    var answer = true;
    phone_book.sort()
    // console.log(phone_book)
    for (let i = 0; i < phone_book.length - 1; i++){
        if (phone_book[i+1].startsWith(phone_book[i])){
            return false
        }
    }
    return answer;
}

phone_book = ['119', '97674223', '1195524421']

phone_book.sort() = ['119', '1195524421', '97674223']

startsWith() 메서드를 사용하여 특정 문자로 시작하는지 확인하여 true, false를 반환

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith

 

String.prototype.startsWith() - JavaScript | MDN

startsWith() 메서드는 어떤 문자열이 특정 문자로 시작하는지 확인하여 결과를 true 혹은 false로 반환합니다.

developer.mozilla.org


리뷰

처음 시도 때 slice메서드로 잘라서 확인을 하는데 확인하는 값을 첫 번째 값으로만 고정해서 풀었더니 몇 가지의 히든 케이스를 통과를 못했다.

JS 메서드 중에 startsWith()가 있다는 것을 알았고 적용했더니 너무 쉽게 풀렸다.