編寫自己的程式碼庫(javascript常用例項的實現與封裝–續)

發表於2017-08-08

1.前言

這個系列的上一篇文章(編寫自己的程式碼庫(javascript常用例項的實現與封裝))總結了34個常見的操作。但是在開發中,常見的例項又何止這麼多個,經過這些日子的探索,以及他人的意見,現在得追加一些操作例項了。希望能幫到大家,也希望如果大家覺得有什麼需要追加的,覺得我哪裡寫得不好或者寫錯了,歡迎評論或者私信我!另外,專案仍然是之前的那個,程式碼已經上傳上去了,也歡迎大家在github上面star一下ec-do
好,下面正式進入正文!

特別說明

ps:下面的的函式寫法,比如直接這樣寫是會報錯的createKeyExp:function(){}。但我這篇文章是基於這個系列的上一篇文章的,等於是createKeyExp:function(){},直接在**ecDo**這個物件裡面。不知道的同學可以移步到上一篇文章(編寫自己的程式碼庫(javascript常用例項的實現與封裝))去看,或者直接去上面的github看程式碼ec-do

實際程式碼如下,只是我沒寫出var ecDo={}而已!我為什麼這樣封裝,之前也說過,不想宣告太多全域性變數。還有一個要注意的就是下面函式可能會出現this這個關鍵詞,除了特別說明之外,都是指向ecDo這個物件。

前序:bug修改以及寫法優化

此處修改之前提交函式已經發現的bug,基於這個系列上篇文章的提供的函式。

changeCase(大小寫轉換函式)修改

upDigit(金額大寫函式)bug修改

covArr(求陣列平均數)修改bug

隨機碼函式重新命名

removeClass(刪除類名)

之前是隻能處理單個html元素,傳入html集合或者html元素陣列,執行會報錯,現在即使傳入的是一個html集合或者html元素陣列,都可以處理

addClass(增加類名)

之前是隻能處理單個html元素,傳入html集合或者html元素陣列,執行會報錯,現在即使傳入的是一個html集合或者html元素陣列,都可以處理

hasClass(檢測物件是否有哪個類名)

之前如果傳進來的obj本身沒有class屬性,或者class為空的情況下,執行會報錯,現在返回fasle

前序:寫法優化

sumArr(數字陣列求和)

siblings(獲取兄弟節點)

增加篩選條件,支援標籤名,class,id

2.字串操作

好了,說完了上篇的內容,接下來說下這篇文章增加的函式

2-1.找出最長單詞

2-2.句中單每個單詞詞首字母大寫

這個我也一直在糾結,英文標題,即使是首字母大寫,也未必每一個單詞的首字母都是大寫的,但是又不知道哪些應該大寫,哪些不應該大寫

2-3.字串過濾

2-4.建立正則字元

2-5.關鍵字加標籤

3.陣列操作

3-1.獲取物件陣列某些項

3-2.排除陣列某些項

3-3.物件陣列排序

4.DOM操作

4-1.預載入圖片

4-2.圖片滾動懶載入

5.其它做操

 

5-1.封裝AJAX

 

5-2.資料型別判斷

5-3.手機型別判斷

6.小結

算上上一篇,js常用的小例項超過50個了,在我自己日常開發,常用的小例項基本都在裡面了(操作太過於靈活的可能一時封裝不了)。可能以後更多的更新並不是增加函式,而修改優化函式寫法(特別是函式命名的問題,還有很多是需要改的,命名也是搞得我詞窮了!),或者是用es6語法改寫。當然,如果真的有值得封裝的小例項,我也會繼續更新,小改動就不會再發文章,只更新github,大改動就繼續發文章。如果大家覺得我哪裡還是可以優化的,或者哪裡有問題,歡迎大家指點下建議。這樣可以讓大家相互學習,相互幫助!

相關文章