国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript 中級筆記 第四章 閉包

2019-11-21 01:09:04
字體:
來源:轉載
供稿:網友
5,閉包
閉包意味著內層的函數可以引用存在于包圍它的函數內的變量,即使外層函數的執行已經終止。
讓我們先來看一個閉包的例子。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

代碼①是處于函數內層,不過它可以使用外層的變量num。
閉合還能解決另一個常見的Js問題,全局變量的影響。
通過自動執行匿名函數組合閉包,便可把原本屬于全局的變量隱藏起來??聪旅娴睦樱?

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

在使用setTimeout時,我們經常也用上了閉包。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

以這種方式使用setTimeout(),可以避免一些問題。
當然使用閉包 也會帶來一些問題。如下代碼所示:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

單擊li彈出的序號為 3 ,并不是正確的序號,它引用的值是最后一次的賦值。
我們可以使用下面代碼來解決:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

通過使用閉包對作用域的控制,從而符合了我們的要求。
上面的代碼可以分解為:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

閉包的概念不容易掌握,我也是花了大量時間和精力才理解。
6,小結
筆記(2),(3),(4)講解了 JavaScript中的幾個重要的內容,包括引用,函數重載,作用域,上下文對象和閉包。
引用的關鍵內容: 指針,數組引用,字符串引用,區別,傳值,傳址。
函數重載的關鍵內容: 參數的數量,參數的類型,arguments,偽數組,typeof,constructor,區別-字符串和對象。
作用域的關鍵內容: 函數劃分,全局作用域,全局對象,window對象的屬性,局部作用域,顯式聲明,隱式聲明。
上下文對象的關鍵內容: this變量,call,apply,參數區別,數組。
閉包的關鍵內容: 內層函數,外層函數,變量,setTimeout,閉包問題,最后一次的賦值,閉包和作用域。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 张家港市| 阳新县| 兴山县| 深州市| 德保县| 东山县| 拜泉县| 自贡市| 扎赉特旗| 神池县| 高安市| 邛崃市| 奎屯市| 昭苏县| 漯河市| 福安市| 霍林郭勒市| 揭西县| 五莲县| 穆棱市| 伊吾县| 温州市| 攀枝花市| 临沭县| 萨嘎县| 星子县| 灵台县| 定州市| 蒙城县| 仙居县| 自治县| 台中市| 左贡县| 神农架林区| 红桥区| 宜宾市| 靖边县| 海伦市| 临邑县| 隆回县| 会理县|