Heim > Fragen und Antworten > Hauptteil
Wie bereits erwähnt
Ich möchte nicht getOwnPropertyNames von jquery verwenden
var getProperty = function(obj) {
var nArr = [];
for (var i in obj) {
nArr.push[i];
}
console.log(nArr);
return nArr;
}
getProperty({a:1,b:2})
Das endgültig zurückgegebene Ergebnis ist [];
Wenn es durch
var getProperty = function(obj) {
var nArr = [],
k = 0;
for (var i in obj) {
nArr[k] = i;
k++;
}
console.log(nArr);
return nArr;
}
getProperty({a:1,b:2});
kann das richtige Ergebnis ['a','b'] zurückgeben, warum
阿神2017-07-05 10:59:43
JS 的 for in 存在 hasOwnProperty 的坑。
你想要返回 ['a', 'b']
,只需:
Object.keys(obj)
即可(支持 IE9+)。