Javascript Object
4196 ワード
1.オブジェクトの属性と方法を動的に追加します.
2.オブジェクトを一度に作成する
3.内装の構造関数を使う
1)it’s sharter to type
2)it exphasizes that object are simply mutable hashes and not something that needs to be baked from a「recipe」(from a class)
3)faster
// start with an empty object
var dog = {};
// add one property
dog.name = "Benji";
// now add a method
dog.getName = function () {
return dog.name;
};
2.オブジェクトを一度に作成する
var dog = {
name: "Benji",
getName: function () {
return this.name;
}
};
3.内装の構造関数を使う
// one way -- using a literal
var car = {goes: "far"};
// another way -- using a built-in constructor
// warning: this is an antipattern
var car = new Object();
car.goes = "far";
literal notationのメリット:1)it’s sharter to type
2)it exphasizes that object are simply mutable hashes and not something that needs to be baked from a「recipe」(from a class)
3)faster
// an empty object
var o = new Object();
console.log(o.constructor === Object); // true
// a number object
var o = new Object(1);
console.log(o.constructor === Number); // true
console.log(o.toFixed(2)); // "1.00"
// a string object
var o = new Object("I am a string");
console.log(o.constructor === String); // true
// normal objects don't have a substring()
// method but string objects do
console.log(typeof o.substring); // "function"
// a boolean object
var o = new Object(true);
console.log(o.constructor === Boolean); // true