如何在我的情况下在字符串中找到特定的字符 "-" 并将其替换为 javascript js 中的"_"



嘿伙计们,我目前正在学习javascript,我需要将"-"替换为"_"。 例如:"Hello-World" ==> "Hello_World" 我厌倦了下面的代码它不起作用,我想知道为什么这种方法是错误的,

function kS(n){ 
j=n.length;
for(i=0;i<j;i++){ 
if(n[i]=="-")
{
n[i]="_"; 
console.log(n);
}
}
}

只需使用替换

console.log("Hello-World".replace('-','_'))

您可以使用String.replace来实现这一点。如果将正则表达式输入与修饰符结合使用g它将匹配所有出现的情况。https://regex101.com/是测试此类正则表达式的好地方。

var myString = "hello-word";
myString = myString.replace(/-/g, '_');

如果你必须使用循环来做,并且被允许使用ES2015或更高版本,你也可以这样写:

var myString = "hello-word";
var newString = [...myString].map(c => c === '-' ? '_' : c).join('');

> 刺痛是不可变的。您可以将字符串转换为字符数组,并检查并替换characters数组中的项目。

最后返回一个连接的数组。

顺便说一句,拼写问题,例如length和未声明的变量在 Javascript 中是全局的,应该避免。

function kS([...characters]) {
var l = characters.length;
for (var i = 0; i < l; i++) {
if (characters[i] === "-") characters[i] = "_";
}
return characters.join('');
}
console.log(kS('1-2-3'));

最新更新