我正在尝试显示JavaScript数组的元素。代码:
var name = ["one" , "two"];
window.onload = function(){
document.getElementById('MinamaisVards').innerHTML=name[1];
}
有谁能告诉我为什么它会显示字母“n”而不是数组的第二个元素?我不明白问题出在哪里。
答案 0 :(得分:14)
已经有一个名为name
的全局,它的window.name
,它只接受字符串,所以当你这样做时
var name = ["one" , "two"];
在全球范围内,你得到它
console.log( name );
你得到了
"one, two"
及其类型为字符串,因此name[1]
为"n"
,即该字符串中的第二个字符。
这是因为您真正设置和获取的内容是window.name
,并且它不接受数组,因此它会在您传递的内容上运行toString()
。
将变量名称更改为尚未使用的名称
答案 1 :(得分:3)
问题是var name
作为保留字,请改用names
。
var name = ["one" , "two"];
window.onload = function(){
document.getElementById('MinamaisVards').innerHTML=name[1];
}
应该是
var names = ["one" , "two"];
window.onload = function(){
document.getElementById('MinamaisVards').innerHTML=names[1];
}