内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

使用JS函數(shù)的注意事項有哪些

這篇文章主要介紹使用JS函數(shù)的注意事項有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

網(wǎng)站建設哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、小程序設計、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了上猶免費建站歡迎大家使用!

函數(shù)聲明和函數(shù)表達式有什么區(qū)別 (*)

函數(shù)聲明:function bar() {}
函數(shù)表達式:var fuc = foo(){}
1.函數(shù)bar將會在整個程序執(zhí)行前被 hoist(提升),因此它在定bar函數(shù)的整個scope (作用域)中都是可用的。即使在函數(shù)定義之前調(diào)用它也沒問題。
2.對于函數(shù)聲明,函數(shù)的名稱是必須的,而對于函數(shù)表達式而言則是可選的,因此,就出現(xiàn)了匿名函數(shù)表達式和命名函數(shù)表達式。
3在這個函數(shù)里

var foo = function bar() {
bar(); // Works};
bar(); // ReferenceError命名函數(shù)bar賦值給了變量foo,所以在函數(shù)聲明外是不可見的,但在bar`函數(shù)內(nèi)部仍然可以調(diào)用。這是因為Javascript對命名函數(shù)處理的機制,函數(shù)的名稱永遠在函數(shù)內(nèi)部的作用域中有效。

什么是變量的聲明前置?什么是函數(shù)的聲明前置 (**)

所謂的變量聲明前置就是在一個作用域塊中,所有的變量都被放在塊的開始出聲明。下面通過三段代碼舉例:
代碼1:

var a = 1;
function main() {
console.log(a);//1
}
main();//輸出1`

代碼2:

1 var a = 1;
2 function main() {
3  console.log(a);
4 var a = 2;
5 }
6 main()//輸出undefined

代碼3:為什么代碼2會輸出undefined

1 var a = 1;
2 function main() {
3 var a;
4  console.log(a);
5 a = 2;
6 }

函數(shù)的聲明前置就是把整個函數(shù)提升到當前作用域的最前面(位于前置的變量聲明后面)。

var num = 1;
console.log(doubleNum(num));//2
function doubleNum(num){ return num2;}

等價于

//函數(shù)的聲明前置
var num;
function doubleNum(num){ return num2;}
num = 1;
console.log(doubleNum(num));//2

arguments 是什么 (*)

arguments 是一個類數(shù)組對象。代表傳給一個function的參數(shù)列表??梢栽诤瘮?shù)內(nèi)部通過使用 arguments對象來獲取函數(shù)的所有參數(shù)。這個對象為傳遞給函數(shù)的每個參數(shù)建立一個條目,條目的索引號從 0 開始。

函數(shù)的重載怎樣實現(xiàn) (**)

可以通過arguments的length和參數(shù)的類型來實現(xiàn)。例:

function sumOfSquares(a, b, c){
if(arguments.length<3){
c = 0;
}
return aa+bb+c*c
}
sumOfSquares(2,3,4);   // 29
sumOfSquares(1,3);   // 10

立即執(zhí)行函數(shù)表達式是什么?有什么作用 (***)

立即執(zhí)行函數(shù)通常有下面兩種寫法:
(function(){...})();
(function(){ ...}());//推薦使用
在Javascript中,一對圓括號“()”是一種運算符,跟在函數(shù)名之后,表示調(diào)用該函數(shù)。
參考-JavaScript中的立即執(zhí)行函數(shù)

什么是函數(shù)的作用域鏈 (****)

作用域就是變量和函數(shù)的可訪問范圍,控制著變量和函數(shù)的可見性與生命周期,在JavaScript中變量的作用域有全局作用域和局部作用域。
作用域鏈是當代碼在一個環(huán)境中執(zhí)行時,會創(chuàng)建變量對象的一個作用域鏈(scope chain,不簡稱sc)來保證對執(zhí)行環(huán)境有權訪問的變量和函數(shù)的有序訪問。作用域第一個對象始終是當前執(zhí)行代碼所在環(huán)境的變量對象(VO)

以上是“使用JS函數(shù)的注意事項有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當前標題:使用JS函數(shù)的注意事項有哪些
本文URL:http://www.rwnh.cn/article32/ghchsc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、軟件開發(fā)、域名注冊、面包屑導航、外貿(mào)建站網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
延庆县| 永靖县| 怀仁县| 阿克陶县| 高清| 孟村| 长春市| 石阡县| 贵阳市| 泸州市| 三台县| 崇明县| 南昌县| 浪卡子县| 新乐市| 齐齐哈尔市| 嵊泗县| 多伦县| 嵩明县| 滁州市| 井陉县| 共和县| 吴旗县| 罗山县| 湖南省| 阿勒泰市| 哈尔滨市| 安岳县| 武安市| 贵港市| 文山县| 兰州市| 邯郸市| 开远市| 大关县| 重庆市| 中宁县| 安仁县| 四平市| 城固县| 秭归县|