1.4 KiB
1.4 KiB
title | localeTitle |
---|---|
Add New Properties to a JavaScript Object | 将新属性添加到JavaScript对象 |
您可以像修改现有JavaScript对象一样向现有JavaScript对象添加新属性。
有两种不同的语法,点表示法和括号表示法。为了便于阅读,通常首选点符号,但属性必须是有效的标识符。
以下是使用点符号的方法:
myDog.bark = "woof-woof";
以下是使用括号表示法的方法:
myObject['bark'] = "woof-woof";
使用括号表示法,我们可以将变量用作属性名称:
var dynamicProperty = "bark";
myObject[dynamicProperty] = "woof-woof";
使用Object.defineProperty(o, prop, descriptor)
方法
Object.defineProperty(myObject, 'bark', {
enumerable: false, // 当且仅当该属性的enumerable为true时,该属性才能够出现在对象的枚举属性中。默认为 false。
configurable: false, // 当且仅当该属性的 configurable 为 true 时,该属性描述符才能够被改变,同时该属性也能从对应的对象上被删除。默认为 false。
writable: false, // 当且仅当该属性的writable为true时,value才能被赋值运算符改变。默认为 false。
value: "woof-woof" // 该属性对应的值。可以是任何有效的 JavaScript 值(数值,对象,函数等)。默认为 undefined。
})