【JavaScript】 オブジェクト生成
環境 CentOS 7.0 JavaScript Node.js 0.12.2
オブジェクトを生成する主な方法は、以下3通り。
1) オブジェクトリテラル
var o0 = {}; // 空オブジェクト var o1 = {a:1, b:"hoge"};
2) new演算子
var o2 = new Object(); // 空オブジェクト var o3 = new Object({x:"hoge", y:"fuga"}); // プロパティx,yを持つオブジェクト var o4 = new Object(o3); // プロパティx,yを持つオブジェクト console.log(o4); // { x: 'hoge', y: 'fuga' }
3) Object.create()
var o5 = Object.create(); var o6 = Object.create({a:1}, { // prototypeに{a:1}、プロパティに{x:"hoge", y:"fuga"}を持つ x: {value: "hoge", writable: true, enumerable:true, configurable:true}, y: {value: "fuga", writable: true, enumerable:true, configurable:true}, }); console.log(o6); // { x: 'hoge', y: 'fuga' } console.log(Object.getPrototypeOf(o6)); // { a: 1 }
Object.create()
- 第一引数
オブジェクト形式で渡す。
するとこのオブジェクトのプロパティ、メソッドが設定される。 - 第二引数
Object.defineProperties()の第二引数と同じ。
プロパティの属性を設定可能。