Javascript 为什么是';第二次世界大战';不代替';第二次世界大战';?

Javascript 为什么是';第二次世界大战';不代替';第二次世界大战';?,javascript,Javascript,为什么“第二次世界大战”不能取代“第二次世界大战” var wha = prompt("What is?"); for (var i = 1; i < wha.length; i++) { if (wha.slice(i,i+12) ==="World War 2" ) { wha =wha.slice(0,1) + "The Second World War" + wha.slice(i +12); } } alert (wha); var-wha=prompt(“什么

为什么“第二次世界大战”不能取代“第二次世界大战”

var wha = prompt("What is?");
for (var i = 1; i < wha.length; i++) {
  if (wha.slice(i,i+12) ==="World War 2" ) {
    wha =wha.slice(0,1) + "The Second World War" + wha.slice(i +12);
  }
}
alert (wha);
var-wha=prompt(“什么是?”);
对于(变量i=1;i
因为i值u以1而不是0开始,而不是wha.slice(0,1),所以您应该给出wha.slice(0,1),并且在if和append中都使用i+11而不是i+12

var wha = prompt("What is?");
for (var i = 0; i < wha.length; i++) {      
  if (wha.slice(i,i+11) ==="World War 2" ) {
    wha =  wha.slice(0,i) + "The Second World War" + wha.slice(i +11);
  }
}
alert (wha);
var-wha=prompt(“什么是?”);
对于(var i=0;i
如果我答对了问题

你在找这个吗

var wha = prompt("What is?");
for (var i = 0; i < wha.length; i++) {
if (wha.slice(i,i+12) ==="World War 2" ) {
wha =wha.slice(0,0) + "The Second World War" + wha.slice(i +12);
}
}
alert (wha);
var-wha=prompt(“什么是?”);
对于(变量i=0;i
Fiddle:

检查此代码(仅我所做的小更改):

var-wha=prompt(“什么是?”);
对于(变量i=0;i
字符串的slice方法接受2个参数,
-其中一个是“开始”=>必需的。开始提取的位置。第一个字符位于位置0
-另一个是“结束”=>可选。结束提取的位置(最多,但不包括),如果省略,slice()将选择从开始位置到字符串结尾的所有字符

所以结束位置应该是+11,而不是12
查看代码:

var-wha=prompt(“什么是?”);
对于(变量i=0;i
现在输入句中的“第二次世界大战”应该取代“第二次世界大战”

请您重新表述一下您的问题好吗?因为这是您编写的程序!尝试使用
.indexOf
而不是循环.Put
console.log(wha.slice(i,i+12))
for(var i=1;i
之后,您将看到为什么您的脚本不工作为什么不
string.replace('World War 2','Second World War')
?请参见。感谢Rajavel D,您的代码工作得很好。我已找到所需的结果我已将i值更改为0而不是1,并删除了wha.slice(0,1)这个代码是错误的。我试着把“新的第二次世界大战”,这个代码也替换了文本“新的”,每当它找到“第二次世界大战”它就替换了第二次世界大战。你改变了什么?请让我知道var I=0;和wha.slice(0,I)@user3693429,如果这有助于您不要忘记通过单击绿色勾号来接受此答案:@user3693429,您的错误:在for循环中,它应该i=0,您编写了i=1和wha.slice(0,0)或wha.slice(1,1)而不是wha.slice(0,1)
 var wha = prompt("What is?");
    for (var i = 0; i < wha.length; i++) {
      if (wha.slice(i,i+12) ==="World War 2" ) {
        wha =wha.slice(0,i) + "The Second World War" + wha.slice(i +12);
      }
    }
    alert (wha);