在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ javascript中局部變量的相關(guān)問(wèn)題。

javascript中局部變量的相關(guān)問(wèn)題。

        function Person(){}                                    
        
        var person = new Person();//創(chuàng)建一個(gè)Person對(duì)象
        function fun(){
            var index = 0;
            //給person新建一個(gè)方法say
            person.run = function(){
                console.log(++index);//執(zhí)行對(duì)局部變量index的操作
            }
        }
        
        fun();//運(yùn)行fun函數(shù)
        //循環(huán)執(zhí)行5次person的run方法
        for (var i = 0;i < 5;i++) {
            person.run();//結(jié)果輸出1,2,3,4,5
        }
    疑問(wèn):執(zhí)行完fun函數(shù)后,index局部變量不是銷(xiāo)毀了嗎?為什么person對(duì)象的run方法還可以操作index變量呢?

回答
編輯回答
陪我終

person.run函數(shù)的引用并沒(méi)有消失

2017年12月29日 05:52
編輯回答
話(huà)寡

內(nèi)部函數(shù),引用了外部函數(shù)的變量。
關(guān)于閉包的:JavaScript 作用域和閉包

2017年1月6日 09:00
編輯回答
櫻花霓

這不是閉包么。
當(dāng)你給person.run上添加一個(gè)function的時(shí)候,function里邊的變量就不會(huì)被銷(xiāo)毀,即使這個(gè)變量是外部函數(shù)的變量。

2018年9月19日 21:59
編輯回答
情未了

這是閉包。
給你個(gè)地址學(xué)習(xí)下:
https://developer.mozilla.org...https://developer.mozilla.org...

2018年5月17日 19:31