使用Object.defineProperty(obj , prop , description)可以修改js的对象属性,可以通过这个方法来实现一些神奇的事情。
例子:
var obj = { a:'123', b:'456', c:'789' }; // Add a data property to the object. Object.defineProperty(obj, "b", { writable: true, enumerable: true, configurable: false }); delete obj.a; obj.b = 456; console.log(obj); // {b: '456', c:'789'}
writable控制属性的可写性,默认为true,设置为false则不可修改;
enumerable控制属性的可枚举性,默认为true,设置为false则无法通过for in获取到该属性;
configurable控制属性类型的可定义性,默认为true,设置为false则无法删除该属性。
本文详细介绍了如何使用Object.defineProperty方法修改JavaScript对象属性的可写性、可枚举性和可定义性,并提供了实例演示。
881

被折叠的 条评论
为什么被折叠?



