gpt4 book ai didi

JavaScript 数组垫片与 for ... in

转载 作者:行者123 更新时间:2023-12-02 20:09:23 25 4
gpt4 key购买 nike

我在 Chrome 上编写了一些 JavaScript,然后尝试在 IE8 中运行它。我遇到的第一件事是缺少 Array.map , Array.filter以及他们所有有用的表兄弟。为了解决这个问题,我添加了一些发现的垫片 here .

这打破了我所有的for ... in ...循环,像这样:

>> c = [1];{...}>> for(i in c) { console.log(i);}LOG: 1LOG: indexOfLOG: lastIndexOfLOG: filter

我希望它只迭代数组条目。有没有办法解决这个问题还是我需要回去写for(i=0;i<c.length;++i)循环?

最佳答案

您需要清理循环,使用 hasOwnProperty 垫片向数组原型(prototype)添加功能,最终会循环遍历添加的函数。

for(i in c){
if(c.hasOwnProperty(i))
{
console.log(i);
}
}

引用文献: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Object/hasOwnProperty

http://msdn.microsoft.com/en-us/library/328kyd6z(v=vs.94).aspx

Crockford 于 for .. in http://javascript.crockford.com/code.html搜索“hasOwnProperty”

关于JavaScript 数组垫片与 for ... in,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7118292/

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