caoporm97国产在线视频|欧美性XXXXX精品|一本一道久久a久久精品综合开|精品久久久久久久久久久AⅤ|

十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
小程序
tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

構(gòu)造函數(shù)與其他函數(shù)的區(qū)別

百恒網(wǎng)絡(luò) 2013-03-08 4683

構(gòu)造函數(shù)與其他函數(shù)的唯一區(qū)別,就在于調(diào)用它們的方式不同。不過,構(gòu)造函數(shù)畢竟也是函數(shù), 不存在定義構(gòu)造函數(shù)的特殊語法。任何函數(shù),只要通過new操作符來調(diào)用,那它就可以作為構(gòu)造函數(shù);而任何函數(shù),如果不通過new操作符來調(diào)用,那它跟普通函數(shù)也不會(huì)有什么兩樣。南昌網(wǎng)絡(luò)公司技術(shù)員舉例說明:例如,前面例子中定義的Person()函數(shù)可以通過下列任何一種方式來調(diào)用:

//當(dāng)作構(gòu)造函數(shù)使用

var person=new Person("Nicholas",29,"Software Engineer");

person.sayName(); //“Nicholas"

//作為普通函數(shù)調(diào)用

Person("Greg",27,"Doctor"); //添加到window

window.sayName(); //"Greg"

//在另一個(gè)對象的作用域中調(diào)用

var o=new Object();

Person.call(o,"Kristen",25,"Nurse");

o.sayName(); //"Kristen"

這個(gè)例子中的前兩行代碼展示了構(gòu)造函數(shù)的典型用法,即使用new操作符來創(chuàng)建一個(gè)新對象。接下來的兩行代碼展示了不使用new操作符調(diào)用Person()會(huì)出現(xiàn)什么結(jié)果:屬性和方法都被添加給wind。w對象了。有讀者可能還記得,當(dāng)在全局作用域中調(diào)用一個(gè)函數(shù)時(shí),this對象總是指向Global對象(在瀏覽器中就是window對象)。因此,在調(diào)用完函數(shù)之后,可以通過window對象來調(diào)用sayName()方法,并且還返回了"Greg"。最后,也可以使用call()(或者apply())在某個(gè)特殊對象的作用域中調(diào)用Person()函數(shù)。這里是在對象O的作用域中調(diào)用的,因此調(diào)用后O就擁有了所有屬性和sayName()方法

本文僅限于南昌網(wǎng)站設(shè)計(jì)公司百恒網(wǎng)絡(luò)內(nèi)容技術(shù)人員查看,請勿作其他商業(yè)用途. 文章出自:南昌網(wǎng)絡(luò)公司-百恒網(wǎng)絡(luò) http://www.gimmickmag.com 如轉(zhuǎn)載請注明出處!


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×