функция, которая удаляет символ из строки - PullRequest
0 голосов
/ 27 марта 2019

Я хочу, чтобы функция удаляла символ из стрига

function remove(str, charToRmv){}

я знаю, как использовать replace split join

var a = "This*Is*A*String"
console.log(a.replace(/\*/g, ""));

var a = "This*Is*A*String"
console.log(a.split(/\*/g).join(''));

var a = "strinASrting"
console.log(a.replace(/A/g, ""));

var a = "strinASrting"
console.log(a.split('A').join(''));

Но я хочу использовать цикл для удаления этого символа

function remove(str, rmv){

      }

Я ожидаю, что результат ("This*Is*A*String", "*") будет 'ThisIsAString'

и

Я ожидаю, что результат ("strinASrting", "A") будет 'strinString'

1 Ответ

2 голосов
/ 27 марта 2019

Просто итерируйте по каждому символу строки и не включайте данный символ, как это:

let remove_char = function(str, ch) {
  let newString = "";
  for (let i = 0; i < str.length; i++) {
    if (str[i] !== ch)
      newString += str[i];
  }
  return newString;
}

Другая реализация, с replace:

let remove_char = function(str, ch) {
  while (str.indexOf(ch) >= 0)
    str = str.replace(ch, "")
  return str;
}
alert(remove_char("THIS*IS*ME", "*"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...