Object.defineProperty

Object.defineProperty() 是 JavaScript 中的一个方法,用于直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回这个对象。这个方法接收三个参数:要定义或修改属性的对象、要添加或修改的属性的名称,以及该属性的描述符。

属性描述符可以包含以下属性:

  • value: 属性的值。
  • writable: 如果为 true,则属性值可以被改变。
  • enumerable: 如果为 true,则属性在 for...in 循环和 Object.keys() 中可见。
  • configurable: 如果为 true,则属性可以被删除,其值可以被改变,也可以再次被枚举。
  • get: 一个函数,当读取该属性时被调用。
  • set: 一个函数,当写入该属性时被调用。

下面是一个简单的例子:

let obj = {};  
  
Object.defineProperty(obj, 'property1', {  
  value: 'This is a property',  
  writable: false,  
  enumerable: true,  
  configurable: false  
});  
  
console.log(obj.property1); // 输出: 'This is a property'

在这个例子中,我们定义了一个名为 property1 的属性在 obj 对象上,并设置了它的值、可写性、可枚举性和可配置性。

你可能感兴趣的:(前端,javascript,vue.js)