通過瞭解jquery源碼熟悉原生js

來源:互聯網
上載者:User

標籤:防止   prot   window   引擎   文檔   閉包函數   操作   樣式   資料   

目的:

目前可以完成移動端頁面準系統,但是引用的都是別人的外掛程式,方法,架構,並且自己寫原生js的時候邏輯不清晰,整體結構混亂,希望可以規整自己的js代碼。

1.自己所有的代碼都應該在一個封閉的空間內,不汙染全域範圍。

實現:自執行函數;(function(global,factory){

    factory(global);

})(typeof window !== "undefined" ? window : this,function(window,noGlobal){

    var jQery.fn = jQuery.prototype = {}; 

//核心方法

//回調系統

//非同步隊列

//資料緩衝

//隊列操作

//選取器引

//屬性操作

//節點遍曆

//文檔處理

//樣式操作

//屬性操作

//事件體系

//AJAX互動

//動畫引擎

return jQuery;

});但是為什麼會有個undefined,不理解???

2.typeof undefined轉化成字串"undefined",

// 通過閉包函數傳入的 window 對象,避免 document 之類的全域變數被其他外掛程式修改

var location = window.location,

      document = window.document,

      docElem = document.documentElement

// 設定別名,通過兩個私人變數映射了 window 環境下的 jQuery 和 $ 兩個對象,以防止變數被強行覆蓋

var _jQuery = window.jQuery,

_$ = window.$,

不理解???

到此為止,看不懂,暫時放棄,轉攻zepto,回頭攻

通過瞭解jquery源碼熟悉原生js

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.