我不确定为什么要为undefined
对象的属性名称输出document
。我认为这与变量表达式myArray[i++]
有关。我可以使它成为一个简单的原始变量,并获得所有属性名称,但我希望将所有属性名称保存到数组中。提前谢谢你的帮助!!
var myArray = [];
var i = 0;
for (myArray[i++] in document) {
document.write(myArray[i] + "</br>");
}
最佳答案
之所以发生这种情况,是因为自后加i
以来,您总是在数组中比定义的位置看一个元素。您可以预先增加:
var myArray = [];
var i = -1;
for (myArray[++i] in document) {
document.write(myArray[i] + "</br>");
}
JSFiddle
关于javascript - JavaScript for/in循环中出现意外输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16226674/