var arr = ["a", "b", "c"];
alert(Object.keys(arr)); // 弹出"0,1,2"
// 类数组对象
var obj = { 0 : "a", 1 : "b", 2 : "c"};
alert(Object.keys(obj)); // 弹出"0,1,2"
// getFoo是个不可枚举的属性
var my_obj = Object.create({}, { getFoo : { value : function () { return this.foo } } });
my_obj.foo = 1;
alert(Object.keys(my_obj)); // 只弹出foo
为什么只弹出foo,getFoo也是key值吧?
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
去百度
Object.defineProperty,为什么没有,因为在指定属性特性的时候,enumerable被指定成false了,也就是不能枚举属性,只要这么写代码就可以得到了: