0

我在我的 JS 中有一个小问题,我需要遍历关联数组中的所有键。

var listOfKeys=new Array();
for (var key in parsedArray)
{
     listOfKeys.push(key);
}

它完美地工作并返回与对象关联的所有属性。现在我有一种情况将原型方法添加到数组中,

Array.prototype.ModifyKey= function(key,value){
        //some code
}

所以现在 parsedArray 有资格访问这个新的原型 ModifyKey(实际上 ModifyKey 是我所有数组的成员)。

现在,当我遍历 parsedArray 以查找所有键时,它会返回所有键以及与之关联的原型...

有没有更好的方法来克服这个..

我知道一些解决方法,例如将 parsedArray 作为 simplearray 保存键值对数组以获取没有此问题的键。但是我得到的输入数组不在我的控制范围内,它是另一个 REST 服务的 json 结果。

4

1 回答 1

1

您需要使用hasOwnProperty

var listOfKeys=new Array();
for (var key in parsedArray) {
    if (parseArray.hasOwnProperty(key)) {
        listOfKeys.push(key);
    }
}
于 2010-01-20T09:58:28.100 回答