第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

javascript中: (function(){})();如何理解?

javascript中: (function(){})();如何理解?

精慕HU 2019-02-18 12:20:25
代碼如下,不理解(function(){})();這個怎么理解?<body><h1 id="output"></h1><script language="javascript" type="text/javascript">var c = 10;( function() {if (c) {setTimeout(arguments.callee, 1000);}document.getElementById("output").innerHTML=c;c--;})();</script></body>
查看完整描述

2 回答

?
HUX布斯

TA貢獻1876條經(jīng)驗 獲得超6個贊

javascript中: (function(){})()是匿名函數(shù),主要利用函數(shù)內(nèi)的變量作用域,避免產(chǎn)生全局變量,影響整體頁面環(huán)境,增加代碼的兼容性。

(function(){})是一個標(biāo)準(zhǔn)的函數(shù)定義,但是沒有復(fù)制給任何變量。所以是沒有名字的函數(shù),叫匿名函數(shù)。沒有名字就無法像普通函數(shù)那樣隨時隨地調(diào)用了,所以在他定義完成后就馬上調(diào)用他,后面的括號()是運行這個函數(shù)的意思


查看完整回答
反對 回復(fù) 2019-02-26
?
函數(shù)式編程

TA貢獻1807條經(jīng)驗 獲得超9個贊

(function(){})是一個標(biāo)準(zhǔn)的函數(shù)定義,但是沒有復(fù)制給任何變量。所以是沒有名字的函數(shù),叫匿名函數(shù)。相當(dāng)于定義一個匿名的 function ,并執(zhí)行這個function。

舉例程序如:

function newfun()

{

if (c)

{

setTimeout(arguments.callee, 1000);

}

document.getElementById("output").innerHTML=c;

c--;

}

newfun();

擴展資料:

(function(){})();作用:javascript中沒用私有作用域的概念,如果在多人開發(fā)的項目上,你在全局或局部作用域中聲明了一些變量,可能會被其他人不小心用同名的變量給覆蓋掉。

根據(jù)javascript函數(shù)作用域鏈的特性,可以使用這種技術(shù)可以模仿一個私有作用域,用匿名函數(shù)作為一個“容器”。

“容器”內(nèi)部可以訪問外部的變量,而外部環(huán)境不能訪問“容器”內(nèi)部的變量,所以( function(){…} )()內(nèi)部定義的變量不會和外部的變量發(fā)生沖突,俗稱“匿名包裹器”或“命名空間”。

JQuery使用的就是這種方法,將JQuery代碼包裹在( function (window,undefined){…jquery代碼…} (window)中,在全局作用域中調(diào)用JQuery代碼時,可以達到保護JQuery內(nèi)部變量的作用。



查看完整回答
反對 回復(fù) 2019-02-26
  • 2 回答
  • 0 關(guān)注
  • 507 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號