有人能告诉我这个javascript有什么问题吗?

时间:2017-04-07 04:55:29

标签: javascript

我正在尝试这里的实验,请回答,这段代码有什么问题?

function run(){
 for(var i=0;i<arguments.length;i++){
  var type=arguments[i].split(" ")[0];
   if(type=="(write)"){
    var arr=arguments[i].split(" ");
    var str=[];
    for(var i=1;i<arr.length;i++){
     str.push(arr[i]);
    }
    var fin="\n"+str.join(" ");
    document.getElementById("console").textContent+=fin;
   }
  }
 }
run(
 "(write) I wonder if this works.",
 "(write) I think it DOES!"
);

不知何故,它只会说“我想知道这是否有效”。在div但没有“我认为它做了!”。有人可以告诉我什么是错的并返回更正后的脚本吗?

4 个答案:

答案 0 :(得分:1)

Javascript没有块范围..将您的其他var i更改为其他内容

答案 1 :(得分:0)

你正在使用for循环的i变量两次。 Javascript具有功能范围和块范围。 因此,在第二个“for”中使用不同的变量(可能是j);

for(var j=1;j<arr.length;j++){
     str.push(arr[j]);
    }

答案 2 :(得分:0)

secret_key_base: xxxxx

答案 3 :(得分:0)

在循环中更改i

for (var i = 1; i < arr.length; i++){
    str.push(arr[i]);
}

通过其他东西或使用es6来定义i。

相关问题