数组索引值未定义,数组不是

时间:2016-05-03 04:23:57

标签: javascript arrays console

如果您需要更多背景信息,请询问。

使用Javascript:

<script type="text/javascript>
var buttons = document.getElementsByClassName("_jvpff");
console.log(buttons);
console.log(buttons[0]); //added after error from command below
console.log(buttons[0].innerHTML);
</script>

控制台:

enter image description here

HTML:

enter image description here

数组包含有效元素,但在尝试访问带索引的元素时,它返回undefined。

感谢。

1 个答案:

答案 0 :(得分:6)

document.getElementsByClassName会返回实时 HTMLNodeList,该元素会在元素可用时进行更新,并且控制台在评估和更新对象内容时有自己的怪癖。如果button[0]在尝试访问时undefinedundefined,则当时为DOMContentLoaded。这意味着您需要等待脚本执行,直到DOM准备好并且元素实际存在。将脚本放在页面底部,或者通过监听{{1}}事件等待DOM准备就绪。

相关问题