4 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊
(function(){})是一個(gè)標(biāo)準(zhǔn)的函數(shù)定義,但是沒(méi)有復(fù)制給任何變量。所以是沒(méi)有名字的函數(shù),叫匿名函數(shù)。相當(dāng)于定義一個(gè)匿名的 function ,并執(zhí)行這個(gè)function。
舉例程序如:
function newfun()
{
if (c)
{
setTimeout(arguments.callee, 1000);
}
document.getElementById("output").innerHTML=c;
c--;
}
newfun();
擴(kuò)展資料:
(function(){})();作用:javascript中沒(méi)用私有作用域的概念,如果在多人開(kāi)發(fā)的項(xiàng)目上,你在全局或局部作用域中聲明了一些變量,可能會(huì)被其他人不小心用同名的變量給覆蓋掉。
根據(jù)javascript函數(shù)作用域鏈的特性,可以使用這種技術(shù)可以模仿一個(gè)私有作用域,用匿名函數(shù)作為一個(gè)“容器”。
“容器”內(nèi)部可以訪問(wèn)外部的變量,而外部環(huán)境不能訪問(wèn)“容器”內(nèi)部的變量,所以( function(){…} )()內(nèi)部定義的變量不會(huì)和外部的變量發(fā)生沖突,俗稱(chēng)“匿名包裹器”或“命名空間”。
JQuery使用的就是這種方法,將JQuery代碼包裹在( function (window,undefined){…jquery代碼…} (window)中,在全局作用域中調(diào)用JQuery代碼時(shí),可以達(dá)到保護(hù)JQuery內(nèi)部變量的作用。

TA貢獻(xiàn)1878條經(jīng)驗(yàn) 獲得超4個(gè)贊
javascript中: (function(){})()是匿名函數(shù),主要利用函數(shù)內(nèi)的變量作用域,避免產(chǎn)生全局變量,影響整體頁(yè)面環(huán)境,增加代碼的兼容性。
(function(){})是一個(gè)標(biāo)準(zhǔn)的函數(shù)定義,但是沒(méi)有復(fù)制給任何變量。所以是沒(méi)有名字的函數(shù),叫匿名函數(shù)。沒(méi)有名字就無(wú)法像普通函數(shù)那樣隨時(shí)隨地調(diào)用了,所以在他定義完成后就馬上調(diào)用他,后面的括號(hào)()是運(yùn)行這個(gè)函數(shù)的意思
擴(kuò)展資料
函數(shù)聲明:使用function聲明函數(shù),并指定函數(shù)名。
function setFn() { // coding }
函數(shù)表達(dá)式:使用function聲明函數(shù),但未指定函數(shù)名,將匿名函數(shù)賦予一個(gè)變量。
var setFn = function() { // coding}
匿名函數(shù):使用function關(guān)鍵字聲明函數(shù),但未指定函數(shù)名。匿名函數(shù)屬于函數(shù)表達(dá)式,匿名函數(shù)有很多作用,賦予一個(gè)變量則創(chuàng)建函數(shù),賦予一個(gè)事件則成為事件處理程序或創(chuàng)建閉包等等。
function() { // coding}

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊
和對(duì)象啥的沒(méi)關(guān)系
(function(){})()
代表立即執(zhí)行一個(gè)匿名的方法
一般用來(lái)與外界隔絕 制造一個(gè)似閉包的環(huán)境 創(chuàng)建一個(gè)作用域鏈 避免變量沖突
(function(){
var a;
..........
})()
添加回答
舉報(bào)