在js中,用new關鍵字來呼叫定義的建構函式。預設返回的是乙個新的物件具有建構函式定義的變數和方法。
先來寫個建構函式的例子:
function prince(name,age)
prince.prototype.tofrog=function()
var prince=new prince("charming",25);
prince.tofrog();//prince charming turned into a frog.
prince.kind;//true
建構函式與普通函式的區別就是:
1、用new關鍵字呼叫
var prince = new prince(「charming」,25);
2、函式內部可以使用this關鍵字(普通函式原則上不可以!因為普通函式的this相當於window)
在建構函式內部,this指向的是構造出的新物件。用this定義的變數貨函式/方法,就是例項變數/例項函式/方法。需要用例項才能訪問到,不能用型別名訪問。
prince.age;//25
prince.age;//undefined
3、預設不用return返回值
建構函式是不需要用return顯示返回值,缺省會返回this,也就是新的例項物件。當然,也可以用return語句,返回值會根據return值的型別而有所不同。
4、函式命名建議首個字母大寫,與普通函式區分開。
不是命名規範,但是建議這麼寫。
function common()
common();
//自行腦補建構函式和普通函式的區別
普通函式與建構函式
1 普通函式 function normalfn normalfn 2 建構函式 建構函式建議首字母大寫,與普通函式區分開 function animal name animal.prototype.sayname function var dog new animal 狗 dog.sayname ...
Javascript 建構函式與普通函式
建構函式與普通函式從本質上是沒有區別的,只不過建構函式可以通過new關鍵字來進行構造例項,從而使例項擁有函式的方法和屬性。建構函式的執行過程 eg var children new parent 1.建立乙個物件 children,children 可以成為是person建構函式的例項。2.建立乙個...
建構函式與普通函式的區別
在命名規則上,建構函式一般是首字母大寫,普通函式遵照小駝峰式命名法。在函式呼叫的時候 function fn 建構函式 1.new fn 2 建構函式內部會建立乙個新的物件,即f的例項 3.函式內部的this指向 新建立的f的例項 4.預設的返回值是f的例項 普通函式 1.fn 2.在呼叫函式的內部...