문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
단, 대문자와 소문자를 구분해야 한다.
indexOf, slice를 이용하려고 했는데
제거해야 할 문자만 해당이 되고 제거가 되지 않았다.
그래서 for문과 if문을 사용했다.
function solution(my_string, letter) {
var answer=''
for(let i=0; i<my_string.length; i++){
if(my_string[i]!==letter){
answer+=my_string[i]
}
}
return answer;
}
for 문으로 모든 문자열을 돌리되,
if 문으로 letter과 같지 않은 문자만 더하도록 했다.
> function solution(my_string, letter) {
const answer = my_string.split(letter).join('')
return answer;
}
letter을 기준으로 분리하여 join 메서드로 합한다.
즉,a가 제거할 문자였다면 salon을 s와 lon으로 나누고 slon으로 리턴하는 것이다.
split() 메서드는 String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눈다.
ex) var str = 'asdfghjkl';
var strReverse = str.split('').reverse().join('');
// 'lkjhgfdsa'
join() 메서드는 어떤 형식화 배열의 모든 요소를 하나의 문자열로 연결합니다.
ex)const uint8 = new Uint8Array([10, 20, 30, 40, 50]);
console.log(uint8.join());
// Expected output: "10,20,30,40,50"
> function solution(my_string, letter) {
return my_string.replaceAll(letter, "");
}
replaceAll 메서드를 써서 letter을 공백으로 바꾼다.
replaceAll() 메서드는 pattern의 모든 일치 항목이 replacement로 대체된 새 문자열을 반환합니다.
ex)apple이라는 string에서 a를 b로 바꾼다면,
const string= "apple"
console.log(string("a","b"))
//bapple이 출력된다.