Object.defineProperties()
Object.defineProperties()はプロパティの作成時に様々な付加情報を加えることができるメソッドです。
Object.defineProperty()は1度に1つのプロパティしか生成できませんでしたがObject.defineProperties()は複数のプロパティを同時に作成できます。
第1引数にはオブジェクトを指定し、第2引数には各プロパティの設定をを値に持つオブジェクトを指定できます。
var obj = {};
Object.defineProperties(obj,{
"prop1" : {
value : "bar1",
writable : true
}
"prop2" : {
value : "bar2",
configurable : true ,
enumerable : true
}
});
console.log(obj.prop1);//bar1
console.log(obj.prop2);//bar2
指定できる付加情報はObject.defineProperty()と同じ値(value)に加えて列挙可能(enumerable)か、削除可能(configurable)か、変更可能(writable)か、さらに、getter/setterの指定が可能なっています。
登録日 : 2015年08月12日 最終更新日 : 2015年8月12日
同じカテゴリー(Object)のエントリー
- Object.create()
- Object.getPrototypeOf()
- Object.isFrozen()
- Object.freeze()
- Object.isSealed()
- Object.seal()
- Object.isExtensible()
- Object.preventExtensions()
- Object.getOwnPropertyDescriptor()
- Object.defineProperties()
- Object.defineProperty()
- keys()
- valueOf()
- toString()
- toLocaleString()
- propertyisEnumerable()
- isProtoTypeOf()
- hasOwnProperty
- constructor