javascript 具名函數(shù)的四種調(diào)用方式 推薦
更新時(shí)間:2009年07月05日 01:06:45 作者:
看四種方式執(zhí)行結(jié)果沒(méi)有區(qū)別。但如果函數(shù)有返回值的話,用new方式調(diào)用時(shí)可能會(huì)讓你有些失望。
這里把函數(shù)名首字母大寫(xiě)了,讓它符合java類(lèi)命名規(guī)范。
復(fù)制代碼 代碼如下:
/**
* 定義一個(gè)函數(shù)Car
*/
function Car(color,doors) {
var car = {};
car.color = color;
car.doors = doors;
car.msg = function(){
alert("This is a " + this.color + " car, there are " + this.doors + " doors." );
}
return car;
}
看起來(lái)怪怪的,Car明明是一個(gè)類(lèi)啊,怎么也不像之前的函數(shù)調(diào)用。和文章標(biāo)題似乎有些不一致了。但我們的確可以用()來(lái)調(diào)用它。當(dāng)然也可以用new來(lái)調(diào)用它。用new方式則讓它更像java的創(chuàng)建對(duì)象方式。
復(fù)制代碼 代碼如下:
//方式1
var c1 = Car('red',2);
c1.msg();
//方式2
var c2 = new Car('black',4);
c2.msg();
嗯。這種方式在一些js庫(kù)中也能見(jiàn)到,如mootools.js中的一個(gè)很重要的函數(shù)Native,返回值是一個(gè)函數(shù)(類(lèi))。mootools core中的Class類(lèi)就是Native函數(shù)返回的。var Class = new Native({..});當(dāng)然也可以不用new而直接采用()調(diào)用。
相關(guān)文章
javascript 一段左右兩邊隨屏滾動(dòng)的代碼
在不少的網(wǎng)站使用了這種技術(shù),一般就是兩邊的一些三個(gè)小塊排一起的廣告。2009-06-06
改變文件域的樣式實(shí)現(xiàn)思路同時(shí)兼容ie、firefox
正如標(biāo)題所言只是模擬了file文件域的外觀,其實(shí)起作用的還是文件域file,這樣就很方便,感興趣的朋友可以了解下2013-10-10
基于javascript實(shí)現(xiàn)文字無(wú)縫滾動(dòng)效果
這篇文章主要介紹了基于javascript實(shí)現(xiàn)文字無(wú)縫滾動(dòng)效果的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-03-03
基于JS代碼實(shí)現(xiàn)簡(jiǎn)單易用的倒計(jì)時(shí) x 天 x 時(shí) x 分 x 秒效果
這篇文章主要介紹了基于JS代碼實(shí)現(xiàn)簡(jiǎn)單易用的倒計(jì)時(shí) x 天 x 時(shí) x 分 x 秒效果,需要的朋友可以參考下2017-07-07
微信小程序?qū)W習(xí)筆記之獲取位置信息操作圖文詳解
這篇文章主要介紹了微信小程序?qū)W習(xí)筆記之獲取位置信息操作,結(jié)合實(shí)例形式分析了微信小程序獲取位置信息的原理、步驟及相關(guān)操作注意事項(xiàng),并結(jié)合圖文形式予以說(shuō)明,需要的朋友可以參考下2019-03-03
QRCode.js二維碼生成并能長(zhǎng)按識(shí)別
這篇文章主要為大家詳細(xì)介紹了QRCode.js二維碼生成并能長(zhǎng)按識(shí)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10
js項(xiàng)目中雙向數(shù)據(jù)綁定的簡(jiǎn)單實(shí)現(xiàn)方法
雙向數(shù)據(jù)綁定指的就是,綁定對(duì)象屬性的改變到用戶界面的變化的能力,反之亦然,下面這篇文章主要給大家介紹了關(guān)于js項(xiàng)目中雙向數(shù)據(jù)綁定的簡(jiǎn)單實(shí)現(xiàn)方法,需要的朋友可以參考下2021-08-08

