亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

javascript中的function 函數名()和函數名:function()有什么不同?

javascript中的function 函數名()和函數名:function()有什么不同?

幕布斯6054654 2019-06-07 06:05:14
javascript中的function 函數名(){} 和 函數名:function(){}有什么不同?
查看完整描述

3 回答

?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

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

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

擴展資料

函數聲明:使用function聲明函數,并指定函數名。 

function setFn() {    // coding   }

函數表達式:使用function聲明函數,但未指定函數名,將匿名函數賦予一個變量。

var setFn = function() {    // coding}

匿名函數:使用function關鍵字聲明函數,但未指定函數名。匿名函數屬于函數表達式,匿名函數有很多作用,賦予一個變量則創建函數,賦予一個事件則成為事件處理程序或創建閉包等等。

function() {    // coding}


 


查看完整回答
反對 回復 2019-06-08
?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

(function(){})是一個標準的函數定義,但是沒有復制給任何變量。所以是沒有名字的函數,叫匿名函數。相當于定義一個匿名的 function ,并執行這個function。

舉例程序如:

function newfun()

{

if (c)

{

setTimeout(arguments.callee, 1000);

}

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

c--;

}

newfun();

擴展資料:

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

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

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

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



查看完整回答
反對 回復 2019-06-08
?
慕少森

TA貢獻2019條經驗 獲得超9個贊

1、是定義函數
2、是設置對象的方法,比如
var foo={
a:12,
b:function(){alert('adfs');}
}
foo.b();//調用b方法。



查看完整回答
反對 回復 2019-06-08
  • 3 回答
  • 0 關注
  • 4153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號