可想實現乙個自己的簡單jQuery庫? 四

2021-09-19 13:44:49 字數 834 閱讀 3468

修改f(selector) 裡的判斷,新增domready

我們知道在jquery中還有一種選擇器寫法

$(function() );
在dom載入完畢後馬上就執行,這樣的方法會比onload更快,所以domready對於我們來說一定是必不可少的

我們在init方法中要新增以下判斷

if(!selector) 

if (typeof selector == 'object')

this.length = selector.length;

return this;

} else if (typeof selector == 'function')

首先selector可能為object的情況,比如傳入的是原生dom物件,dom陣列物件. 另外要記得轉為陣列`var selector = [selector];

因為有可能是乙個元素比如是window,document等否則沒法迴圈

然後selector如果是function那我們就認為他是domready

ps:在這我判斷的並沒有非常的全面,僅僅具備了基礎功能

kodo.ready = function(fn) ,false);

doc.removeeventlistener('domcontentloaded',fn,true);

};

然後這個是ready的原始碼,由於我們只相容高階瀏覽器所以僅僅需要這樣寫即可.

既然你都看到這了,還不給我乙個star說得過去麼你!! :(

可想造乙個屬於你自己的jquery庫?(三):

自己實現乙個簡單的ArrayList

自己簡單的實現arraylist的 註解很清楚了,寫了arraylist的add obj 方法 remove index 方法,get index 方法,自己定義迭代器,自己進行迭代 迭代器介面 public inte ce iterator集合 的實現 version description 自己...

自己實現乙個簡單的hashmap

這個hashmap實現方式應該是jdk1.7的,在資料量小的時候和jdk1.8實現的差不多,不過我這個沒有採用鍊錶長度8時轉化紅黑樹增加查詢效率,在擴容時也是全部元素重新hash,計算新的位置,所以如果大資料量的時候,複製到新的陣列就會比較慢.jdk8裡面對複製到新的陣列也是有優化的,我這裡就沒做了...

自己動手實現乙個簡單的React

為了更好的理解react,我決定讀preact的原始碼,preact是乙個非常小的框架,同時也和react的實現原理以及api一樣,幾乎可以很好代替react。雖然還是有一些差異的。但是使用的時候幾乎不會有什麼違和感。看原始碼總是不夠過癮,於是做了乙個偉大的決定就是自己親手去寫乙個react,畢竟p...