Notice
Recent Posts
Recent Comments
Link
관리 메뉴

윤일무이

[JavaScript] 프로그래머스 코딩테스트 입문 : 특정 문자 제거하기 본문

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 특정 문자 제거하기

썸머몽 2023. 3. 21. 21:44
728x90

📌  문제

 

📌  풀이

주어진 문자열에서 특정 문자를 제거해야 한다. 

내가 좀 보편적으로 ㅋㅋㅋ 풀었다면 좀 더 명쾌한 답들이 많아서 같이 가져왔다.

풀이가 3개라서 각 코드별로 기록하겠다.

 

📌  코드

1. 내가 푼 풀이

function solution(my_string, letter) {
    var answer = my_string.split('');
    var filtered = answer.filter((item => item !== letter));
    filtered = filtered.join('');
    return filtered
}

문자열을 쪼개서 배열로 반환했다. 이후 그 배열에서 필터를 걸어 주어진 문자와 같지 않은 것들만 빼냈다.

이후 다시 join 해서 배열의 모든 요소를 연결해 하나의 문자열로 돌려주었다. 

 

2. 다른 분의 풀이

function solution(my_string, letter) {
    var answer = my_string.replaceAll(letter, '');
    return answer
}

replaceAll은 처음 봤는데 첫 번째 인수와 일치하는 모든 항목을 두 번째 인수로 바꿔주는 매서드다.

''을 이렇게도 쓸 수 있구나 신기했다.

 

3. 다른 분의 풀이2

function solution(my_string, letter) {
    const answer = my_string.split(letter).join('')
    return answer;
}

내 풀이가 이 코드를 돌아간 것 같다. 굳이 필터를 써서 빼고 다시 합칠 필요 없이 주어진 letter를 기준으로 나누고 다시 붙이면 된다.

.jonin('') 없이 돌렸을 때 예시의 경우 ["abcde",""]로 반환되는데 join에서 빈 문자열을 구분자로 연결하면 원하는대로 나온다.

 

 

한 문제로 많은 매서드를 배웠다.

728x90