時(shí)間:2020-01-27 18:22 來(lái)源:長(zhǎng)春網(wǎng)站建設(shè) 作者:hqgjylc1.cn 瀏覽次數(shù):
試想一下,函數(shù)名作為指導(dǎo),也有助于理解為什么ECMAScript的無(wú)功能的概念超載。下面是前面使用的示例:
功能addSom?Numb?r(NUM){
返回NUM + 100;
}
功能addSomeNumber(NUM){
返回NUM + 200;
結(jié)果= aaddSomeNumber(100); // 30O
顯然,在這個(gè)例子中,我們聲明了兩個(gè)名稱相同的功能,其結(jié)果是后蓋的在僻靜的幾個(gè)前的功能。上面的代碼實(shí)際上是從下面的代碼沒(méi)有不同;
VAR addSomeNumber =函數(shù)(NUM){
返回門+ 100;
);
addSomeNunber =函數(shù)(NUM){
返回NUM + 200;
);
VAR結(jié)果= addSomeNumber(100); // 300
長(zhǎng)春網(wǎng)站建設(shè)公司技術(shù)人員提示:觀察改寫后的代碼,很容易在看看到底是怎么回事兒 - 創(chuàng)建第二個(gè)功能時(shí),變量引用實(shí)際上覆蓋第一功能addSomeNumber。
希望廣大從事建筑網(wǎng)站所有者或網(wǎng)站建設(shè)公司或企業(yè)的幫助球隊(duì),像這樣不明白的,可以聯(lián)系網(wǎng)絡(luò)長(zhǎng)春網(wǎng)絡(luò)技術(shù)。我們與廣大站長(zhǎng)和網(wǎng)站建設(shè)公司的技術(shù)人員分享我們的高科技和經(jīng)驗(yàn)。
到目前為止,我們還沒(méi)有函數(shù)聲明和函數(shù)表達(dá)式區(qū)分。事實(shí)上,將數(shù)據(jù)加載到的函數(shù)聲明和函數(shù)表達(dá)式執(zhí)行環(huán)境分析器時(shí)不一視同仁。解析器函數(shù)的聲明將是一讀,并執(zhí)行任何代碼之前將其提供(訪問(wèn)); 作為一個(gè)函數(shù)表達(dá)式,你必須等到解析器中的代碼行執(zhí)行它,真的會(huì)被解釋。請(qǐng)看下面的例子:
警報(bào)(總和(10,10));
函數(shù)sum(numl,NUM2){
返回numl + NUM2;
}
上面的代碼是全功能的。因?yàn)榇a的執(zhí)行開(kāi)始之前,解析器讀取功能的聲明,并把它添加到執(zhí)行環(huán)境。如果,如在下面的例子中所示,上述的函數(shù)聲明政府是可變的初始化模式(即,使用函數(shù)表達(dá)式),它會(huì)導(dǎo)致在執(zhí)行期間的錯(cuò)誤:
警報(bào)(總和(10,10));
VAR和= {功能NUM1,NUM2){
返回numl + NUM2;
};
為什么上面的代碼將在運(yùn)行期間產(chǎn)生錯(cuò)誤的原因,因?yàn)樵谝环萋暶髦谐跏蓟瘮?shù),而不是一個(gè)函數(shù)聲明。換言之,之前其中函數(shù),變量sum還沒(méi)有保存到函數(shù)的引用語(yǔ)句的執(zhí)行; 此外,由于第一行代碼會(huì)導(dǎo)致“意外 識(shí)別符“(意外標(biāo)識(shí)符)誤差,實(shí)際上,不到下一行。
此外,當(dāng)你可以通過(guò)差異變量之間的函數(shù)聲明和函數(shù)表達(dá)式語(yǔ)法外部訪問(wèn)這個(gè)功能實(shí)際上相當(dāng)于。
長(zhǎng)春網(wǎng)站建設(shè)公司技術(shù)員提示:您還可以使用函數(shù)聲明和函數(shù)表達(dá)式在同一時(shí)間,例如:VAR總和=功能 總和(){}。然而,這句法會(huì)導(dǎo)致在Safari中的錯(cuò)誤。
希望廣大從事建筑網(wǎng)站所有者或網(wǎng)站建設(shè)公司或企業(yè)的幫助球隊(duì),像這樣不明白的,可以聯(lián)系網(wǎng)絡(luò)長(zhǎng)春網(wǎng)絡(luò)技術(shù)。我們與廣大站長(zhǎng)和網(wǎng)站建設(shè)公司的技術(shù)人員分享我們的高科技和經(jīng)驗(yàn)。
因?yàn)樵贓CMAScript中本身的函數(shù)名是可變的,該功能也可以被用作一個(gè)值。換句話說(shuō),不僅可以通過(guò)像相同的參數(shù)傳遞一個(gè)函數(shù)到另一個(gè)功能,以及功能可以返回作為另一個(gè)函數(shù)的結(jié)果??纯聪旅娴暮瘮?shù):
功能callSomeFunction(someFunction,someArgument){
返回someFunction(someArgument);
}
長(zhǎng)春網(wǎng)站建設(shè)公司技術(shù)人員注意:此函數(shù)接受兩個(gè)參數(shù)。第一個(gè)參數(shù)應(yīng)該是第二參數(shù)的函數(shù)應(yīng)該是被傳遞給函數(shù)的值。然后它可以如以下示例的功能進(jìn)行傳遞:
功能ADD10(NUM){
返回NUM + 10;
}
VAR = RESULT1 callSomeFunction(addl0,10);
警報(bào)(resultl); // 20
函數(shù)getGreeting(名稱){
返回“你好,” +名稱;
}
VAR RESULT2 = callSomeFunction(getGreeting “尼古拉斯”);
警報(bào)(RESULT2); //“你好,尼古拉斯”
這里SomeFunction()函數(shù)是通用的,我。e。,第一個(gè)參數(shù)是否在什么功能,返回的第一個(gè)結(jié)果參數(shù)傳遞。長(zhǎng)春網(wǎng)絡(luò)技術(shù)人員提醒您,記住它,訪問(wèn)函數(shù)指針而不執(zhí)行函數(shù)時(shí),函數(shù)名后,那么它必須被移除括號(hào)。由此到上述示例callSomeFunction()是ADD10 和getGreeting,而不是執(zhí)行他們的結(jié)果后,。
當(dāng)然,另一個(gè)功能可以從函數(shù)返回,這是非常有用的技術(shù)。例如,假設(shè)你有對(duì)象的數(shù)組,我們要根據(jù)對(duì)象屬性的數(shù)組排序。該陣列被傳遞給比較功能sort()方法來(lái)接收兩個(gè)參數(shù),我。e。,價(jià)值比較。然而,我們需要一種方法,它根據(jù)排序哪個(gè)屬性。為了解決這個(gè)問(wèn)題,你可以定義接收屬性名稱的函數(shù),然后創(chuàng)建一個(gè)基于屬性名稱的比較功能,這里是這個(gè)函數(shù)的定義。
功能createComparisonFunction(propertyName的){
返回功能(objectl,Object2的){
VAR值1 = objectl將[PropertyName];
VAR值2 = Object2的將[PropertyName];
如果(值1返回-1;
否則如果(值1>值2){
返回1;
否則{
返回0;
}
};
}
這個(gè)功能看起來(lái)有點(diǎn)復(fù)雜,但實(shí)際上沒(méi)有什么比另一個(gè)函數(shù)的更多的嵌套函數(shù),并在封面的功能再加上運(yùn)營(yíng)商的回報(bào)。接收propertyName的內(nèi)部參數(shù)的功能后,將其使用方括號(hào)符號(hào)獲取一個(gè)給定的屬性的值。獲得所期望的屬性值之后,定義的比較函數(shù)是非常簡(jiǎn)單的。上述功能可以在下面的示例中被用作這樣的:
VAR數(shù)據(jù)= [{名: “扎卡里”,年齡:28),TNAME: “尼古拉斯”,年齡:29}];
數(shù)據(jù)。排序(createComparisonFunction( “名字”));
警報(bào)(數(shù)據(jù)[數(shù)據(jù)[0]。名稱); //尼古拉斯
數(shù)據(jù)。排序(createComparisonFunction( “時(shí)代”));
警報(bào)(數(shù)據(jù)[O]。名稱); //扎卡里
在這里,我們創(chuàng)建數(shù)據(jù)的數(shù)組,其中包含兩個(gè)對(duì)象。其中每個(gè)對(duì)象包含一個(gè)name屬性和年齡屬性。默認(rèn)情況下,sort()方法會(huì)調(diào)用每個(gè)對(duì)象的toString()方法來(lái)確定它們的順序; 但結(jié)果往往是不符合人的思維習(xí)慣。因此,我們呼吁createComparisonFunction(N NAME“)根據(jù)每個(gè)對(duì)象的名稱屬性的值方法創(chuàng)建一個(gè)比較功能,分類。其結(jié)果是第一個(gè)名稱為“尼古拉斯”,年齡29的頂面,是對(duì)象。然后,我們用createComparisonFunction比較函數(shù)返回(“時(shí)代”),這是由對(duì)象的年齡屬性進(jìn)行排序。結(jié)果是一個(gè)數(shù)值名稱“扎卡里”,年齡值對(duì)象28的第一行中。
本文標(biāo)題:ECMAScript中變量引用的覆蓋
本文鏈接:http://www.laozhan.com//a/news/jzzs/2018/1022/714.html
長(zhǎng)春網(wǎng)站制作(6) 長(zhǎng)春網(wǎng)站優(yōu)化(9) 長(zhǎng)春SEO(98) 長(zhǎng)春網(wǎng)站建設(shè)(208) 網(wǎng)站建設(shè)(54) 沈陽(yáng)網(wǎng)站建設(shè)(26) 北京網(wǎng)站建設(shè)(21) 深圳網(wǎng)站建設(shè)(20) 上海網(wǎng)站建設(shè)(21) 大連網(wǎng)站建設(shè)(20) 網(wǎng)站制作(34) 網(wǎng)站制作公司(21) 網(wǎng)站建設(shè)公司(20) 重慶網(wǎng)站建設(shè)(20) 天津網(wǎng)站建設(shè)(20) 濟(jì)南網(wǎng)站建設(shè)(20) 成都網(wǎng)站建設(shè)(20) 杭州網(wǎng)站建設(shè)(20) 石家莊網(wǎng)站建設(shè)(20) 廣州網(wǎng)站建設(shè)(20) 太原網(wǎng)站建設(shè)(20) 福州網(wǎng)站建設(shè)(20) 合肥網(wǎng)站建設(shè)(20) 武漢網(wǎng)站建設(shè)(20) 長(zhǎng)沙網(wǎng)站建設(shè)(20) 深圳做網(wǎng)站(2) 北京做網(wǎng)站(2) 重慶做網(wǎng)站(2) 天津做網(wǎng)站(2) 濟(jì)南做網(wǎng)站(2) 成都做網(wǎng)站(2) 杭州做網(wǎng)站(2) 石家莊做網(wǎng)站(2) 廣州做網(wǎng)站(2) 太原做網(wǎng)站(2) 福州做網(wǎng)站(2) 合肥做網(wǎng)站(2) 武漢做網(wǎng)站(2) 長(zhǎng)沙做網(wǎng)站(2) 上海做網(wǎng)站(2) 做網(wǎng)站公司(2) 大連做網(wǎng)站(2) 合肥建站(2) 武漢建站(2) 長(zhǎng)沙建站(2) 上海建站(2) 沈陽(yáng)建站(2) 深圳建站(2) 北京建站(2) 建站公司(3) 大連建站(2) 重慶建站(2) 天津建站(2) 濟(jì)南建站(2) 成都建站(2) 杭州建站(2) 石家莊建站(2) 廣州建站(2) 太原建站(2) 福州建站(2) 上海軟件開(kāi)發(fā)(2) 沈陽(yáng)軟件開(kāi)發(fā)(2) 深圳軟件開(kāi)發(fā)(2) 北京軟件開(kāi)發(fā)(2) 軟件制作(2) 軟件開(kāi)發(fā)公司(2) 軟件制作公司(2) 大連軟件開(kāi)發(fā)(2) 重慶軟件開(kāi)發(fā)(2) 天津軟件開(kāi)發(fā)(2) 濟(jì)南軟件開(kāi)發(fā)(2) 成都軟件開(kāi)發(fā)(2) 杭州軟件開(kāi)發(fā)(2) 石家莊軟件開(kāi)發(fā)(2) 廣州軟件開(kāi)發(fā)(2) 太原軟件開(kāi)發(fā)(2) 福州軟件開(kāi)發(fā)(2) 合肥軟件開(kāi)發(fā)(2) 武漢軟件開(kāi)發(fā)(2) 長(zhǎng)沙軟件開(kāi)發(fā)(2) 網(wǎng)站建設(shè)網(wǎng)站建設(shè)(1) 長(zhǎng)沙網(wǎng)站設(shè)計(jì)(6) 上海網(wǎng)站設(shè)計(jì)(7) 沈陽(yáng)網(wǎng)站設(shè)計(jì)(6) 深圳網(wǎng)站設(shè)計(jì)(6) 北京網(wǎng)站設(shè)計(jì)(6) 網(wǎng)頁(yè)設(shè)計(jì)(6) 網(wǎng)站設(shè)計(jì)公司(6) 網(wǎng)頁(yè)設(shè)計(jì)公司(6) 大連網(wǎng)站設(shè)計(jì)(6) 重慶網(wǎng)站設(shè)計(jì)(6) 天津網(wǎng)站設(shè)計(jì)(6) 濟(jì)南網(wǎng)站設(shè)計(jì)(6) 成都網(wǎng)站設(shè)計(jì)(6) 杭州網(wǎng)站設(shè)計(jì)(6) 石家莊網(wǎng)站設(shè)計(jì)(6) 廣州網(wǎng)站設(shè)計(jì)(6) 太原網(wǎng)站設(shè)計(jì)(6) 福州網(wǎng)站設(shè)計(jì)(6) 合肥網(wǎng)站設(shè)計(jì)(6) 武漢網(wǎng)站設(shè)計(jì)(6) 軟件開(kāi)發(fā)軟件開(kāi)發(fā)(1) 網(wǎng)站設(shè)計(jì)(27) 沈陽(yáng)網(wǎng)站制作(1) 上海網(wǎng)站制作(2) 深圳網(wǎng)站制作(1) 北京網(wǎng)站制作(1) 大連網(wǎng)站制作(1) 重慶網(wǎng)站制作(1) 天津網(wǎng)站制作(1) 濟(jì)南網(wǎng)站制作(1) 成都網(wǎng)站制作(1) 杭州網(wǎng)站制作(1) 石家莊網(wǎng)站制作(1) 廣州網(wǎng)站制作(1) 太原網(wǎng)站制作(1) 福州網(wǎng)站制作(1) 合肥網(wǎng)站制作(1) 武漢網(wǎng)站制作(1) 長(zhǎng)沙網(wǎng)站制作(1) 免費(fèi)網(wǎng)站建設(shè)(0) 高端網(wǎng)站設(shè)計(jì)(0) 做網(wǎng)站(15) 企業(yè)網(wǎng)站建設(shè)(1) 關(guān)鍵詞優(yōu)化(23) 關(guān)鍵詞排名(1) 長(zhǎng)春APP開(kāi)發(fā)(7) APP開(kāi)發(fā)(3) 軟件開(kāi)發(fā)(9) 建站(11) 營(yíng)銷型網(wǎng)站建設(shè)(1) 沈陽(yáng)做網(wǎng)站(0) 手機(jī)APP制作(4) 長(zhǎng)春SEO優(yōu)化(2) SEO(0) 長(zhǎng)春網(wǎng)絡(luò)營(yíng)銷(0) 長(zhǎng)春網(wǎng)站推廣(0) 長(zhǎng)春網(wǎng)站SEO(9) 長(zhǎng)春SEO外包(0) 長(zhǎng)春SEO顧問(wèn)(0) 長(zhǎng)春做網(wǎng)站(73) 長(zhǎng)春SEO技術(shù)(0) 長(zhǎng)春網(wǎng)站設(shè)計(jì)(4) 長(zhǎng)春SEO公司(0) 長(zhǎng)春軟件公司(8) 佰億金科(5) 長(zhǎng)春網(wǎng)絡(luò)推廣(0) 長(zhǎng)春網(wǎng)絡(luò)SEO(1) 網(wǎng)絡(luò)推廣(1)
網(wǎng)站,小程序,APP,微信公眾平臺(tái),SEO,設(shè)計(jì),建設(shè),開(kāi)發(fā),制作,優(yōu)化,推廣,營(yíng)銷,維護(hù),專業(yè)的軟件公司助您輕松解決營(yíng)銷解決方案。