我想要一个函数,以去除条纹上的字符
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'
答案 0 :(得分:2)
只需遍历字符串的每个字符,并且不包括给定的char,如下所示:
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", "*"));