function Person(name, age){
this.name = name;
this.age = age;
}
//斷點調(diào)試,進行類型查看
var p1 = new Person();
var p2 = new Object();
var p3 = new Date();
var p4 = new RegExp();
var p5 = {};
構(gòu)造函數(shù)是干什么用的?
在javascript中,構(gòu)造函數(shù)是給對象添加屬性,初始化屬性作用的。
對象創(chuàng)建的過程
var a = new Person();
首先使用new關(guān)鍵字創(chuàng)建對象,類似于使用{},這個時候創(chuàng)建出來的對象是一個"沒有任何成員"的對象。這里需要注意兩點:
使用new關(guān)鍵字創(chuàng)建的對象,對象的類型就是創(chuàng)建這個對象使用的構(gòu)造函數(shù)的函數(shù)名
使用{}創(chuàng)建對象,對象的類型一定是Object,相當于使用了new Object()
使用構(gòu)造函數(shù)為其初始化成員
在構(gòu)造函數(shù)調(diào)用開始的時候,有一個賦值操作,也就是讓this = 剛創(chuàng)建出來的對象
在構(gòu)造函數(shù)中,this就代表剛創(chuàng)建出來的對象
在構(gòu)造函數(shù)中,利用對象的動態(tài)特性,為對象添加成員