프로그래머스

[JavaScript] 특정 문자 제거하기 - 프로그래머스

jjangsh 2024. 7. 31. 20:54

문제 :

 

 

내 풀이 :

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

 

 

replaceAll() 메서드는 ES2021 버전에 새로 추가되었다고 한다.

 

비슷한 역할로 전부터 있었던 replace() 메서드가 있다.

 

그럼 두 메서드의 차이점은 무엇일까?

 

replace:

  • 첫 번째 인자로 주어진 문자열이나 정규식을 찾아서, 두 번째 인자로 주어진 문자열로 바꿉니다.
  • replace는 첫 번째 인자가 문자열인 경우, 문자열의 첫 번째 등장만 대체합니다.
let str = "hello world";
let newStr = str.replace("l", "L");
console.log(newStr);  // "heLlo world"

 

 

replaceAll:

  • 문자열의 모든 등장 부분을 대체합니다.
  • replaceAll은 첫 번째 인자가 문자열일 경우, 해당 문자열이 등장하는 모든 위치를 바꿉니다.
let str = "hello world";
let newStr = str.replaceAll("l", "L");
console.log(newStr);  // "heLLo worLd"

 

 

replaceAllreplace와는 다르게 문자열의 모든 부분을 대체하므로, 반복적으로 대체해야 하는 상황에서 유용합니다.