gpt4 book ai didi

javascript - 未捕获的类型错误 : Cannot call method 'hasAttribute' of undefined

转载 作者:行者123 更新时间:2023-11-28 20:18:32 28 4
gpt4 key购买 nike

我正在尝试检查按钮是否具有名称属性。以下行给出了正确的结果。

alert(course_view_buttons[30].hasAttribute("name"));

但是下面的代码给出了这样的错误-

"Uncaught TypeError: Cannot call method 'hasAttribute' of undefined "

完整的代码在这里 -

var course_view_buttons = document.getElementsByTagName("button");
alert(course_view_buttons.length);

var a=0;
for (x=0;x<=course_view_buttons.length;x++){

if(course_view_buttons[x].hasAttribute("name");){
a++;
}
}
alert(a);

如果有人可以的话请帮助我。我被困在这个问题上 4-5 个小时了。提前致谢。

最佳答案

问题是测试此表达式中的小于或等于:

x <= course_view_buttons.length

当在循环的最后一次迭代中将 x 设置为 course_view_buttons.length 的值时,course_view_buttons[x] 引用指向一个不存在的元素。这是因为数组索引从 0 开始,但长度值从 1 开始。

解决方案是删除等号:

x < course_view_buttons.length

关于javascript - 未捕获的类型错误 : Cannot call method 'hasAttribute' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18794930/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com