//有參函數(shù)fun2 function fun2(param) { alert(param); } fun2(' " /> 厕沟全景美女厕沟精品,亚洲精品乱码久久久久久黑人,欧美一级理论性理论a

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

javascript 具名函數(shù)的四種調(diào)用方式 推薦第1/3頁(yè)

1、()小括號(hào)運(yùn)算符 平時(shí)最常用的就是()運(yùn)算符來(lái)調(diào)用一個(gè)函數(shù)
復(fù)制代碼 代碼如下:
//無(wú)參函數(shù)fun1
function fun1() {
alert('我被調(diào)用了');
}
fun1()

//有參函數(shù)fun2
function fun2(param) {
alert(param);
}
fun2('我被調(diào)用了')

ECMAScript3后加入給Function加入了call和apply后,就有了下面兩種
2、call
復(fù)制代碼 代碼如下:
//無(wú)參函數(shù)fun1
function fun1() {
alert('我被調(diào)用了');
}
fun1.call(null);

//有參函數(shù)fun2
function fun2(param) {
alert(param);
}
fun2.call(null,'我被調(diào)用了')

3、apply
復(fù)制代碼 代碼如下:
//無(wú)參函數(shù)fun1
function fun1() {
alert('我被調(diào)用了');
}
fun1.apply(null);

//有參函數(shù)fun2
function fun2(param) {
alert(param);
}
fun2.apply(null,['我被調(diào)用了'])

4、new (不推薦使用這種方式哦 )
復(fù)制代碼 代碼如下:
//無(wú)參函數(shù)fun1
function fun1() {
alert('我被調(diào)用了');
}
new fun1();


//有參函數(shù)fun2
function fun2(param) {
alert(param);
}
new fun2('我被調(diào)用了')

ok,從以上調(diào)用方式上看四種方式執(zhí)行結(jié)果沒(méi)有區(qū)別。但如果函數(shù)有返回值的話,用new方式調(diào)用時(shí)可能會(huì)讓你有些失望。
復(fù)制代碼 代碼如下:
//有返回值的函數(shù)fun
function fun() {
alert('我被調(diào)用了');
return "jack";
}

var c = new fun();
alert(c);//[object Object],為什么不是"jack"?

改成這樣,
復(fù)制代碼 代碼如下:
//有返回值的函數(shù)fun
function fun() {
alert('我被調(diào)用了');
return {name:'jack'};
}

var c = new fun();
alert(c.name);//jack,又正常返回了

好了,總結(jié)下:用new方式調(diào)用函數(shù)時(shí)。如果存在返回值,當(dāng)返回值是Javascript的內(nèi)置類型(基本類型)如字符串(String),數(shù)字(Number),布爾(Boolean)等時(shí),將不會(huì)返回該值;當(dāng)返回值是對(duì)象,函數(shù),數(shù)組等對(duì)象類型時(shí),將返回該對(duì)象,函數(shù),數(shù)組。

當(dāng)返回值是內(nèi)置類型(基本類型)時(shí),new fun()到底返回什么呢?下一篇將討論new方式調(diào)用的細(xì)節(jié)。

JavaScript技術(shù)javascript 具名函數(shù)的四種調(diào)用方式 推薦第1/3頁(yè),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 宁夏| 九寨沟县| 原阳县| 渭南市| 定安县| 龙游县| 常州市| 明水县| 新兴县| 鹰潭市| 启东市| 尖扎县| 海伦市| 多伦县| 滕州市| 大丰市| 体育| 汨罗市| 二手房| 浦县| 贵德县| 梅河口市| 临桂县| 天峨县| 盐池县| 许昌市| 萨迦县| 韩城市| 团风县| 宜川县| 平昌县| 资溪县| 新化县| 利辛县| 皮山县| 监利县| 噶尔县| 安徽省| 婺源县| 邵武市| 繁峙县|