
문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
| my_string | letter | result |
|---|---|---|
| "abcdef" | "f" | "abcde" |
| "BCBdbe" | "B" | "Cdbe" |
입출력 예 #1
"abcdef" 에서 "f"를 제거한 "abcde"를 return합니다.
입출력 예 #2
"BCBdbe" 에서 "B"를 모두 제거한 "Cdbe"를 return합니다.
const solution = (my_string, letter) => [...my_string].filter(x => letter !== x).join('');
바로 이전 문제에서 spread 문법과 join() 함수를 사용하지 못 했는데 이 문제에서는 잘 사용하였다.
한 줄 코드 완성!
첫 번째 풀이
function solution(my_string, letter) { return my_string.replaceAll(letter, ""); }
replaceAll 메서드는 처음 접해봤는데 이렇게도 풀 수 있구나 싶다. 해당 문자 모두 "" 이걸로 대체하겠다는 코드이다.
두 번째 풀이
function solution(my_string, letter) { return my_string.split(letter).join(''); }
split() 함수도 기억해야겠다.
2021년이 되서야 ES2021(ES12) 표준 명세에 전역 문자열 바꾸기 메서드인 replaceAll() 이 추가되었다고 한다.