簡述jq的實現原理

2021-08-29 20:33:53 字數 446 閱讀 4189

1. 沙箱:

(function(w, u) )(window);
2. 無new化
(function(window, undefined),

jquery.fn = jquery.prototype =

},jquery.fn.init.prototype = jquery.fn;

})(window);

當我們傳入乙個選擇器時,會返回new jquery.fn.init(selector, context);而當我們傳入空選擇器時,在init中會顯示返回this,此時this是指帶init,而init的prototype被賦值為jquery.fn,因此就相當於jquery的例項。

3. jq鏈式呼叫原理

4. $.extend與$.fn.extend區別

5. $.extend()深淺複製

KVC KVO的實現原理簡述

kvc全稱為key value coding,鍵值編碼。就是提供了一種機制可以訪問乙個物件的任意屬性。它是通過使用字串作為關鍵字而不是使用setter getter訪問器去訪問乙個物件例項的屬性的機制。問題 kvc是如何訪問屬性的 1 如果是取值操作,檢查是否存在 is,或者 get的對應key的訪...

ThreadLocal實現原理簡述

threadlocal是乙個執行緒內共享變數工具類。將執行緒與該執行緒存放的物件做乙個對映,各個執行緒之間的變數互不干擾。適用於各個執行緒依賴不同的變數值完成操作的場景,如 spring宣告式資料庫事務 shiro的session threadlocal內部結構 核心機制 1.每個執行緒例項中有個t...

簡述vuex實現原理

vuex實現原理實際上是通過vue的例項化來實現 這裡通過計數器來說明 首先例項化兩個vue物件,通過他測試是否能統一管理狀態 root和 root2 new vue new vue 接下就是例項化乙個vue物件來統一管理狀態 function registerplugin vue myvuex.v...