JavaScript物件建立的九種方式

2021-08-31 01:40:04 字數 2301 閱讀 7770

1、標準建立物件模式

var person = new object();

person.name = "nicholas";

person.age = 29;

person.job = "software engineer";

person.sayname = function();

2、字面量模式

var person = 

};

3、工廠模式

function createperson(name, age, job);

return o;

}var person1 = createperson("nicholas", 29, "software engineer");

var person2 = createperson("greg", 27, "doctor");

4、建構函式模式

function person(name, age, job);

}var person1 = new person("nicholas", 29, "software engineer");

var person2 = new person("greg", 27, "doctor");

5、原型模式

function person(){}

person.prototype.name = "nicholas";

person.prototype.age = 29;

person.prototype.job = "software engineer";

person.prototype.sayname = function();

var person1 = new person();

person1.sayname(); //"nicholas"

var person2 = new person();

person2.sayname(); //"nicholas"

alert(person1.sayname == person2.sayname); //true

6、組合建構函式和原型模式

function person(name, age, job)

person.prototype =

}var person1 = new person("nicholas", 29, "software engineer");

var person2 = new person("greg", 27, "doctor");

person1.friends.push("van");

alert(person1.friends); //"shelby,count,van"

alert(person2.friends); //"shelby,count"

alert(person1.friends === person2.friends); //false

alert(person1.sayname === person2.sayname); //true

7、動態原型模式(這裡只在 sayname()方法不存在的情況下,才會將它新增到原型中。)

function person(name, age, job);

}}var friend = new person("nicholas", 29, "software engineer");

friend.sayname();

8、寄生建構函式模式(除了使用 new 操作符並把使用的包裝函式叫做建構函式之外,這個模式跟工廠模式其實是一模一樣的。)

function person(name, age, job);

return o;

}var friend = new person("nicholas", 29, "software engineer");

friend.sayname(); //"nicholas"

9、穩妥建構函式模式(一是新建立物件的例項方法不引用 this;二是不使用 new 操作符呼叫建構函式)

function person(name, age, job);

return o;

}var friend = person("nicholas", 29, "software engineer");

friend.sayname(); //"nicholas"

javascript物件的建立

function createoject name,return object var aa createoject zhangsan nan aa.run 利用第一種方式的問題就是不能識別他是什麼物件 function myobject name,var testobect new myobjec...

JavaScript物件的建立

var person new object person.name cjh person.age 19 var person 需要注意的是,花括號內,成員與成員之間以逗號隔開,而最後乙個成員後不能跟逗號,否則會在ie7及更早的版本中報錯。成員名也可以直接使用字串。其一大優點是可以向函式傳遞大量引數。...

JavaScript建立物件

一 建立單個物件 方式一 object建構函式 var o new object o.key value 方式二 物件字面量 方式一和二缺點 使用相同的介面建立很多物件會產生大量重複 使用方式三解決 方式三 工廠模式 使用函式封裝以特定介面建立物件的細節 function createobject ...