摘要:前言上次聊了關于定義函數的知識,還有參數方面的,這次先補充一點參數小知識,還有簡單的講一下閉包。在這里,函數包含了一個內部函數,所以可以使用引入的參數。我們把函數作為返回值賦給,當然,同時返回的還有。
前言
上次聊了關于定義函數的知識,還有參數方面的,這次先補充一點參數小知識,還有簡單的講一下閉包。
arguments對象引入的參數會保存在arguments數組對象中,第一個引入的參數保存在aruguments[0]中,以此類推,參見以下代碼:
var myArr = ["hangzhou", "shanghai", "beijing", "guangzhou"]; function foo(obj) { console.log(arguments[0]);//["hangzhou", "shanghai", "beijing", "guangzhou"]; console.log(arguments[0][1]);//shanghai } foo(myArr);閉包
function outside(x) { function inside(y) { return x + y; } return inside; } fun_inside = outside(5); console.log(fun_inside); result = fun_inside(3);//return 8 result1= outside(5)(3);//return 8
我們都知道,函數內部是可以讀取外部定義的變量的。在這里,outside函數包含了一個內部函數inside,所以inside可以使用outside引入的參數。我們把函數inside作為返回值賦給fun_inside,當然,同時返回的還有x。此時我們再執行fun_inside并且傳入一個y就能返回兩者之和,最后一行只是把兩個參數同時傳入,其他無異,這就是一個很簡單的閉包。
下面是執行這段代碼后監視窗的結果。
更深入的下一期再講,因為作者也正在學習啦~~
var myArr = ["hangzhou", "shanghai", "beijing", "guangzhou"]; console.log(myArr);//["hangzhou", "shanghai", "beijing", "guangzhou"] console.log("test:" + myArr);//test:hangzhou,shanghai,beijing,guangzhou
為什么輸出內容會不同呢?作者到現在也不解,不過對程序運行是沒有影響的。有大神懂的話,求指導???
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78257.html
摘要:如果我們直接可以計算出正確的和值,豈不是一次到位函數正有此功能,當然我們需要知道子元素的寬高效果是一個作用于內聯元素的屬性。內聯元素的特性是會和其它內聯元素或者文字在同一行顯示,但是默認情況下是與父元素基線對齊的。 ??CSS控制居中是前端開發中非常常用的布局技能,本文列出幾種CSS控制元素居中的幾種方法。??談及HTML元素居中展示,涉及到水平居中和垂直居中,以及水平垂直居中。由于H...
摘要:關鍵字在中的變化非常的靈活,如果用的不好就非常惡心,用的好程序就非常的優雅,靈活,飄逸所以掌握的用法,是每一個前端工程師必知必會的而且這個也是一些大公司筆試中常見的考察項第一種單獨的,指向的是這個對象注當前的執行環境是所以指向了第二種全局函 this關鍵字在javascript中的變化非常的靈活,如果用的不好就非常惡心,用的好,程序就非常的優雅,靈活,飄逸.所以掌握this的用法,是每...
閱讀 982·2021-11-23 09:51
閱讀 2695·2021-08-23 09:44
閱讀 656·2019-08-30 15:54
閱讀 1433·2019-08-30 13:53
閱讀 3101·2019-08-29 16:54
閱讀 2527·2019-08-29 16:26
閱讀 1186·2019-08-29 13:04
閱讀 2313·2019-08-26 13:50