真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

[教程]JScript中的變量引用規(guī)則(補(bǔ)充,函數(shù)用法說(shuō)明)(轉(zhuǎn))

[教程]JScript中的變量引用規(guī)則(補(bǔ)充,函數(shù)用法說(shuō)明) (轉(zhuǎn))[@more@]

[教程]jscript中的變量引用規(guī)則(補(bǔ)充,函數(shù)用法說(shuō)明)
by .NET.com/,http://lostinet.d2g.com">http://www.lostinet.com/,http://lostinet.d2g.com

第一篇:XML">http://www.csdn.net/expert/topic/787/787738.xml

我高考語(yǔ)文才496分啊,,,慘?!,F(xiàn)在要說(shuō)些什么,都不知道。。。
還是用例子開(kāi)始吧:不過(guò)例子和分析,現(xiàn)在寫在一起了。

這個(gè)只是補(bǔ)充說(shuō)明,看不看都沒(méi)有關(guān)系。不會(huì)的還是看看好:)

2。1 -》函數(shù)被傳遞
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
var func=function(){alert("ok")};
function CallFunc(f)
{
 f();
}
CallFunc(func);
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}
一般的應(yīng)用中,傳遞函數(shù)是很少見(jiàn)的。但是對(duì)于很多動(dòng)態(tài)的應(yīng)用,傳遞函數(shù)就很正常了。
這個(gè)例子,func是一個(gè)函數(shù)。CallFunc(func)時(shí),把func傳遞給CallFunc中的f
所以在
function CallFunc(f)
{
 f();
}
中,f是一個(gè)函數(shù)。所以調(diào)用f()是可以的。實(shí)際上就是調(diào)用function(){alert("ok")};

2。2 -》函數(shù)作為方法
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
var obj={};//var obj=new object();
obj.value=14;
var func=function(number){alert(this.value+number)};
obj.alert=func;
obj.alert(25);
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}

這個(gè)例子,說(shuō)明了函數(shù)作為一個(gè)對(duì)象的方法,是怎樣使用的。
this是一個(gè)特殊的變量,它是一個(gè)參數(shù)。
當(dāng)執(zhí)行obj.alert(25)時(shí),
其實(shí)是執(zhí)行function(number){alert(this.value+number)};
而這個(gè)過(guò)程中obj也傳遞過(guò)去了,化身為this。
這個(gè)過(guò)程大家都比較了解,所以也不多說(shuō)了。
要執(zhí)行對(duì)象的方法,只有兩個(gè)途徑:
一:obj.method(); 必須有一個(gè)“.”的存在。
二:func.apply(obj,args),func.call(obj,arg1,arg2...),這個(gè)需要JScript5.5的支持。

2。3 -》函數(shù)作為方法,2
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
var obj={};//var obj=new Object();
obj.value=14;
var func=function(number){alert(this.value+number)};
obj.alert=func;
var method=obj.alert
method(4);
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}

為什么顯示NaN呢?
雖然method=obj.alert,但是傳遞的,卻只是obj["alert"]本身,即func
所以在執(zhí)行func中,沒(méi)有隱含的對(duì)象傳過(guò)去給this
this沒(méi)有被賦值,在IE中默認(rèn)是window,在其他變量空間就依賴有this的空間來(lái)判斷

2。4 -》函數(shù)作為對(duì)象使用。
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
function aaa()
{
 alert(this);
}
function aaa.bbb()
{
 alert(this);
}
var func=function(){};
func.bbb=aaa;
func.bbb();
func.bbb.bbb();
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}
我沒(méi)有精神了,你自己理解吧。。


2。5 -》函數(shù)作為對(duì)象使用2。
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
function func(){};
function func.a(){return "a"};
function func.b(){return "b"};
function func.c(){return "c"};
for(var i in func)alert(func[i]());
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}

2。6 -》caller
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
function Func()
{
 alert(Func.caller);
}
function CallFunc()
{
 alert(CallFunc.caller);
 Func();
}
CallFunc();
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}
因?yàn)镃allFunc()是全局執(zhí)行的,所以沒(méi)有函數(shù)調(diào)用CallFunc,所以CallFunc.caller為null
而在Func,是由CallFunc調(diào)用的,所以第二次顯示CallFunc

2。7 -》不依賴名字,在函數(shù)中取函數(shù)本身
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
function CallFunc()
{
 alert(CallFunc);
 var fs=function(fs){return fs.caller};
 fs=fs(fs);
 alert(fs);
}
CallFunc();
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}
第一次alert是做個(gè)示范。這個(gè)是直接引用CallFunc的。
var fs定義了一個(gè)很特殊的函數(shù)。
當(dāng)執(zhí)行fs=fs(fs)時(shí),就取回fs的調(diào)用者CallFunc,所以fs引用了CallFunc了

2。8 -》arguments
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
function alertBatch()
{
 var args=alertBatch.arguments;
 var arr=[];
 for(var i=0;i arr[i]=args[i];
 alert(arr.join(""));
}
alertBatch(1,"a",2,"b",3,"c",4,"d",5,"e");
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}
alertBatch.arguments是調(diào)用該函數(shù)的參數(shù)的數(shù)組(不是Array)
根據(jù)這個(gè),函數(shù)可以處理多個(gè)參數(shù)的情況。

2。9 -》Function.prototype.toString
{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---{---
function Function.prototype.toString()
{
 return "object Function";
}
function func()
{
}
alert(func);
---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}---}

創(chuàng)新互聯(lián)建站主要從事成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)睢陽(yáng),10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):18980820575

函數(shù)的其他方面就不多說(shuō)了。JScript的參考書都有說(shuō)明。


網(wǎng)站標(biāo)題:[教程]JScript中的變量引用規(guī)則(補(bǔ)充,函數(shù)用法說(shuō)明)(轉(zhuǎn))
本文URL:http://weahome.cn/article/igoips.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部