gpt4 book ai didi

JavaScript For...in... 返回 hasObject?

转载 作者:行者123 更新时间:2023-11-30 07:29:10 25 4
gpt4 key购买 nike

就是这样。我在网上和 StackOverflow 上都看过,但我没有看到有人在谈论这个。

构造数组时是否正常如:

_e = Array();
_e[0] = 'admin_adv_from_date_month';
_e[1] = 'admin_adv_from_date_day';
_e[2] = 'admin_adv_from_date_year';
_e[3] = 'admin_adv_to_date_month';
_e[4] = 'admin_adv_to_date_day';
_e[5] = 'admin_adv_to_date_year';

当你像这样运行它时:

enableElements : function(elements)
{
for ( var e in elements )
{
hForm.enableElement(elements[e]);
}
}

在我的代码中,e 最后设置的是“hasObject”。我必须在“enableElement”中实现一个安全防护,因为在这种情况下 e 返回 null,因为“hasObject”成为一个函数:

enableElement : function(element)
{
var e = document.getElementById(element);
if ( e )
{
e.disabled = false;
}
}

我在最新的 Safari 上运行它。是的,我知道我可以使用各种替代浏览器,这些浏览器可以完成各种神奇的事情,但我在这个项目中使用的是 Safari。

这是正常的浏览器行为吗?为什么会发生这种情况?

最佳答案

https://developer.mozilla.org/en/JavaScript/Reference/Statements/for...in

for...in

"Iterates a specified variable over all the properties of an object, in arbitrary order. For each distinct property, the specified statement is executed."

"Although it may be tempting to use this as a way to iterate over an Array, this is a bad idea."

你不应该使用 for...in遍历数组,意味着遍历对象属性。用好旧for (var i = 0; i < arr.length; i++)而是循环。

关于JavaScript For...in... 返回 hasObject?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4273081/

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