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

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

為什么要定義一個匿名函數并將jQuery作為參數傳遞給它?

為什么要定義一個匿名函數并將jQuery作為參數傳遞給它?

汪汪一只貓 2019-11-05 11:10:24
我正在看ribs.js截屏視頻中出色的peepcode演示代碼。在其中,主干代碼全部封裝在傳遞給jQuery對象的匿名函數中:(function($) {  // Backbone code in here})(jQuery);在我自己的主干代碼中,我將所有代碼包裝在jQuery DOM'ready'事件中:$(function(){  // Backbone code in here});第一種方法的目的/優勢是什么?這樣做會創建一個匿名函數,然后立即將jQuery對象作為函數參數傳遞來執行該匿名函數,從而有效地確保$是jQuery對象。這是唯一的觀點-保證jQuery綁定到“ $”還是有其他原因呢?
查看完整描述

3 回答

?
MYYA

TA貢獻1868條經驗 獲得超4個贊

作為次要說明,將$作為參數傳遞給匿名函數會使$在該函數中成為本地函數,如果$函數被調用很多,則對性能的影響很小。這是因為javascript首先在本地范圍內搜索變量,然后一直向下遍歷到窗口范圍(通常位于$)。


查看完整回答
反對 回復 2019-11-05
?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

同時使用。


自我傳遞函數,您可以在其中傳遞jQuery來防止庫沖突,并確保jQuery與$一樣可用。


和.ready()快捷方式方法是僅在DOM已加載后才需要運行JavaScript的方法:


(function($) {

    $(function(){

          //add code here that needs to wait for page to be loaded

    });


    //and rest of code here

})(jQuery);


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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