名为`name`的数组逐行打印而不是单词。用于循环

时间:2013-09-02 13:17:37

标签: javascript arrays loops for-loop

我试图在JavaScript中对一个名为 name 的数组进行控制台记录,但它没有按预期工作。我正在尝试使用 chrome 29 版本,但firefox没有问题是否限制使用它。

使用for循环打印名为 name 的数组:

var name = ["Hello", "foo", "test", "tried"];

for (var i = 0; i < name.length; i++) {

    console.log(name[i]);

}

结果: enter image description here

使用for循环打印名为 test 的数组:

var test = ["Hello", "foo", "test", "tried"];

for (var i = 0; i < test.length; i++) {

    console.log(test[i]);

}

结果: enter image description here

1 个答案:

答案 0 :(得分:4)

namewindow.name的简写,是包含当前窗口名称的属性。以下内容:

var name = ["Hello", "foo", "test", "tried"];

不会创建新变量。而是将数组展平为字符串,并将结果分配给name属性:

> var name = ["Hello", "foo", "test", "tried"];
undefined
> name
"Hello,foo,test,tried"

这就是造成奇怪迭代行为的原因。