这是代码。我的函数不能在对象Array
上工作,但在我的对象ob
上使用对象文字定义。
function all_properties(object) {
var value = "[";
for (var prop in object) {
value += '"' + prop + '"' + ","
}
value = value.slice(0,-1);
value += "]";
return value;
}
var ob = {first: 1, second: function () {}, third: function () {}}
console.log(all_properties(ob))
console.log(all_properties(Array))
答案 0 :(得分:6)
与大多数内置对象一样,Array
构造函数(不是数组)的属性标记为non-enumerable,因此for in
不会看到它们。
使用Object.getOwnPropertyDescriptors()
查看所有属性。