<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        深入理解JavaScript 中的匿名函數((function() {})();)與變量的作用域

        來源:懂視網 責編:小采 時間:2020-11-27 22:09:05
        文檔

        深入理解JavaScript 中的匿名函數((function() {})();)與變量的作用域

        深入理解JavaScript 中的匿名函數((function() {})();)與變量的作用域:匿名函數:沒有實際名字的函數。 匿名函數的作用: 1、通過匿名函數可以實現閉包,關于閉包在后面的文章中會重點講解。在這里簡單介紹一下:閉包是可以訪問在函數作用域內定義的變量的函數。若要創建一個閉包,往往都需要用到匿名函數。 2、模擬塊級作用域,
        推薦度:
        導讀深入理解JavaScript 中的匿名函數((function() {})();)與變量的作用域:匿名函數:沒有實際名字的函數。 匿名函數的作用: 1、通過匿名函數可以實現閉包,關于閉包在后面的文章中會重點講解。在這里簡單介紹一下:閉包是可以訪問在函數作用域內定義的變量的函數。若要創建一個閉包,往往都需要用到匿名函數。 2、模擬塊級作用域,

        匿名函數:沒有實際名字的函數。

        匿名函數的作用:

        1、通過匿名函數可以實現閉包,關于閉包在后面的文章中會重點講解。在這里簡單介紹一下:閉包是可以訪問在函數作用域內定義的變量的函數。若要創建一個閉包,往往都需要用到匿名函數。
        2、模擬塊級作用域,減少全局變量。執行完匿名函數,存儲在內存中相對應的變量會被銷毀,從而節省內存。再者,在大型多人開發的項目中,使用塊級作用域,會大大降低命名沖突的問題,從而避免產生災難性的后果。自此開發者再也不必擔心搞亂全局作用域了。

        本章節重點給大家介紹JavaScript 中的匿名函數((function() {})();)與變量的作用域,具體內容如下所示:

        以前都是直接用前端框架Bootstrap,突然想看看Javascript,發現javascript是個非常有趣的東西,這里把剛碰到的一個小問題的理解做下筆錄(廢話不多說,上代碼)。

        /**
         * Example 1
         */
        var localvar = "local var";
        console.log(localvar);//local var
        /**
         * Example 2
         */
        console.log(x === undefined); // true
        var x = 3;
        /**
         * Example 3
         */
        var myvar = "my value";
        //Test01
        //will return a value of undefined
        (function() {
         console.log(myvar); // undefined
         var myvar = "local value";
         console.log(myvar); // local value
        })();
        console.log(myvar);//my value
        //Test02
        (function myFunction(){
         console.log(myvar);//my value
        })();
        //Test03
        var test = new function(){
         console.log(myvar);//my value
        };

        解釋如下:

        (1).JavaScript 變量的特別之處是,你可以引用稍后聲明的變量而不會引發異常。這一概念稱為變量聲明提升(hoisting);

        (2).JavaScript 變量感覺上是被“提升”或移到了函數或語句的頂部。然而提升后的變量將返回 undefined 值。

        (3).在使用或引用某個變量之后進行聲明和初始化操作,這個被提升的引用仍將得到 undefined 值。

        (4).這里Example 3中Test01是這次問題的關鍵,Test01和Test02是很相似的(至少我看著很相似)。但是最后輸出結果不能用(1)、(2)、(3)來解釋

          經過查看官方API文檔發現,在匿名函數(function() {})();的使用中形成了閉包(重點,不清楚的可以查閱閉包的概念,閉包概念還是好理解的);

          由于閉包的存在,全局變量自然無法訪問(閉包的一個重要原因就是為了避免訪問全局變量),故Test01 function中第一句輸出結果為undefined。

        總結原因:匿名函數(function() {})();是一個特殊的閉包寫法。

        總結

        以上所述是小編給大家介紹的JavaScript 中的匿名函數((function() {})();)與變量的作用域,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        深入理解JavaScript 中的匿名函數((function() {})();)與變量的作用域

        深入理解JavaScript 中的匿名函數((function() {})();)與變量的作用域:匿名函數:沒有實際名字的函數。 匿名函數的作用: 1、通過匿名函數可以實現閉包,關于閉包在后面的文章中會重點講解。在這里簡單介紹一下:閉包是可以訪問在函數作用域內定義的變量的函數。若要創建一個閉包,往往都需要用到匿名函數。 2、模擬塊級作用域,
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 77777亚洲午夜久久多人| 日本中文一区二区三区亚洲| 亚洲国产精品特色大片观看完整版 | 一级黄色免费大片| 国产精品冒白浆免费视频| 99久久国产亚洲综合精品| 亚洲AV无码一区二区二三区软件| 一二三区免费视频| 亚洲精品无码激情AV| 精品国产福利尤物免费| 亚洲精品成人无码中文毛片不卡 | 精品无码一级毛片免费视频观看 | 日韩一区二区三区免费播放| 免费va在线观看| 国产99精品一区二区三区免费| 国产亚洲人成A在线V网站 | 国产免费一区二区视频| 国产亚洲3p无码一区二区| 日本中文字幕免费高清视频| 亚洲一区二区成人| 中国在线观看免费国语版| 亚洲精品无码久久| 亚洲精品线路一在线观看| 成人电影在线免费观看| 亚洲国产成人久久| 色吊丝最新永久免费观看网站| 国产av无码专区亚洲av毛片搜| 亚洲熟伦熟女新五十路熟妇 | 无码人妻丰满熟妇区免费| 亚洲成人动漫在线观看| 暖暖在线日本免费中文| WWW免费视频在线观看播放 | 久久久久久亚洲精品无码| 精品国产人成亚洲区| 成人免费黄色网址| 国产精品观看在线亚洲人成网| 亚洲精品色午夜无码专区日韩| 9久9久女女免费精品视频在线观看 | 成人黄软件网18免费下载成人黄18免费视频 | 在线视频网址免费播放| 亚洲欧洲中文日产|