1. 2018年你應(yīng)該知道的 15 個(gè) JavaScript 實(shí)用程序庫

        共 3802字,需瀏覽 8分鐘

         ·

        2018-09-29 17:23

        15-javascript-utility-libraries-you-should-know-in-2018-2.jpg

        15個(gè)有用的JavaScript實(shí)用程序庫,可加速您的前端開發(fā)。

        2018年 JavaScript在仍然是?最受歡迎和最廣泛使用?的編程語言,圍繞它的生態(tài)社區(qū)也在不斷的完善和壯大。

        1_ABNOknjk6gnMIRnyjT_m4Q.png

        盡管如此,JavaScript 的“標(biāo)準(zhǔn)庫”仍然會保持著這種蓬勃發(fā)展的狀態(tài)。 為填補(bǔ)這一空白,許多流行的實(shí)用程序庫在過去幾年中在GitHub上發(fā)展壯大。
        以下是有用的且經(jīng)常維護(hù)的庫的列表推薦給大家:

        Underscore & Lodash (dah)

        大多數(shù)人可能已經(jīng)知道了這兩個(gè)庫。 Underscore 是構(gòu)建 JavaScript 中常見任務(wù)提供實(shí)用程序功能。 Lodash是NPM下載量最大,依賴性最多的包,旨在為數(shù)組,字符串,對象和參數(shù)對象提供更一致的跨環(huán)境迭代支持。 它已經(jīng)成為 Underscore 的超集,并且由相同的核心貢獻(xiàn)者維護(hù)。 這兩個(gè)庫絕對應(yīng)該在你的技術(shù)棧中。愚人碼頭注:兩者不同的地方可以看看?stackoverflow 上的回答。

        Lodash :https://github.com/lodash/lodash

        Lodash 中文文檔:http://www.css88.com/doc/lodash/

        Underscore :https://github.com/lodash/lodash

        Underscore 中文文檔:http://www.css88.com/doc/underscore/

        Ramda

        這個(gè)JS 實(shí)用程序庫超過 12K stars,Ramda庫專為函數(shù)式編程而設(shè)計(jì),可以輕松創(chuàng)建函數(shù)式 pipeline、且從不改變用戶已有數(shù)據(jù)。 不可變性和無副作用函數(shù)是其設(shè)計(jì)理念的核心。 所有函數(shù)都自動進(jìn)行柯里化 curry,并且相應(yīng)地安排傳遞的參數(shù)以便于使用。

        Ramda :?https://github.com/ramda/ramda

        你也可以看看?immutable.js

        如果你對 JavaScript 函數(shù)式編程還不是很了解,可以看看下面這些文章

        MathJS

        超過 6K 的stars,Math.js是一個(gè) JavaScript 和 Node.js 中應(yīng)用最廣泛的 math 數(shù)學(xué)擴(kuò)展庫,它與JavaScript的內(nèi)置 Math 庫兼容。 該庫包含一個(gè)靈活的表達(dá)式解析器,能夠執(zhí)行符號計(jì)算,并帶有大量內(nèi)置函數(shù)和常量。 你甚至可以自己擴(kuò)展它。

        Math.js :https://github.com/josdejong/mathjs

        Moment/date-fns

        Moment 擁有超過40K的stars,moment.js是一個(gè)JavaScript日期和時(shí)間操作庫,用于解析,驗(yàn)證,操作和格式化日期。 Moment旨在在瀏覽器和Node.js 環(huán)境中工作。 從 v2.10.0 開始,代碼用ECMAScript 6模塊編寫。

        Date-fns 是一個(gè)越來越流行的(超過11K的stars,每周超過50萬次NPM安裝)JavaScript 時(shí)間操作庫,許多開發(fā)人員選擇它來替換 moment.js( 參見比較?),提供超過130個(gè)函數(shù)來操作 瀏覽器 和 Node.js 中的日期。 Date-fns是使用純函數(shù)構(gòu)建的,并且在不更改傳遞日期實(shí)例的情況下保持不可變(immutable)。 它適用于webpack,Browserify或Rollup等打包器,并且還支持 tree-shaking。

        moment.js :https://github.com/moment/moment/

        date-fns :https://github.com/date-fns/date-fns

        Sugar

        1_opTXAh1ohEAVpBM4WffuMQ.png

        Sugar 擁有超過3.5K個(gè)stars,Sugar是一個(gè)用于處理本機(jī)對象的JavaScript實(shí)用程序庫。 自定義構(gòu)建和模塊化的npm包,允許您只使用您需要的東西,用戶可以定義方法或使用插件來處理專門的用例。 值得一試。

        Sugar :https://github.com/andrewplummer/Sugar

        Lazy

        Lazy 擁有5K個(gè)stars,lazy.js是一個(gè)函數(shù)式的JavaScript庫。該庫的底層的實(shí)現(xiàn)都是懶執(zhí)行的,也就是說盡量不做運(yùn)算,除非站的需要。這個(gè)庫不依賴第三方庫,這里有一個(gè)demo作為序列進(jìn)行測試的現(xiàn)場演示,這里是?API文檔

        lazy.js :https://github.com/dtao/lazy.js

        CollectJS

        CollectJS 擁有超過3.5K個(gè)stars,collect.js 是一個(gè)非常有前途的庫,并且不依賴于任何第三方庫,用于在JavaScript中處理數(shù)組和對象,其中有許多有用的功能,并且API(幾乎)與?Laravel Collections5.5相同。 該庫維護(hù)非常積極,值得關(guān)注。

        collect.js :https://github.com/ecrmnn/collect.js/

        ChanceJS

        Chance是一個(gè)隨機(jī)字符串,數(shù)字等生成器,非常簡單。有助于減少一些枯燥的工作,在你需要寫自動化測試或則其它你需要生成隨機(jī)的地方很有用。雖然只要3K個(gè)stars,這個(gè)庫非常有用,因?yàn)楫?dāng)我們被要求生成隨機(jī)的東西時(shí),我們往往會重復(fù)編寫我們的代碼。

        chancejs :https://github.com/chancejs/chancejs

        ChartJS

        1_5vb_uzQfSxThunrMR2zU4w.png

        擁有近 40K 的 stars,chart.js是一個(gè)很好的少即是多的例子,提供8種不同的數(shù)據(jù)可視化類型,每種類型都是動畫并且可自定義的。 Chart.js 允許您使用??標(biāo)簽創(chuàng)建簡單的HTML5圖表,在所有現(xiàn)代瀏覽器中都具有出色的渲染性能。 絕對是列表中最有用和最優(yōu)雅的庫之一。

        chart.js :https://github.com/chartjs/Chart.js

        Polished

        Polished 擁有超過 3.5K 個(gè)stars,由?styled-components?團(tuán)隊(duì)開發(fā),Polished是一個(gè)非常輕量級的工具集,用于在JavaScript中使用Sass風(fēng)格的輔助函數(shù)和mixin編寫樣式。 該庫與樣式組件,Aphrodite,Radium或純內(nèi)聯(lián)樣式兼容。

        polished :https://github.com/styled-components/polished

        Mout

        Mout.js是 JavaScript 模塊化實(shí)用程序的集合,可以在瀏覽器或node.js中用作AMD模塊,提供類似于其他語言標(biāo)準(zhǔn)庫(Python,Ruby,PHP等)上的輔助方法。 mout.js允許您僅加載所需的模塊/函數(shù),提供一致的API并規(guī)范多個(gè)瀏覽器的行為。

        mout :https://github.com/mout/mout

        30 seconds of code

        這并不是一個(gè) JavaScript 庫,而是一個(gè)非常實(shí)用的 JavaScript 代碼片段集合,全部采用 ES6 編寫,而且實(shí)用最簡單的方法實(shí)現(xiàn),盡量確保你可以在30秒或更短的時(shí)間內(nèi)理解這些代碼,并使用。

        30 seconds of code :https://github.com/30-seconds/30-seconds-of-code

        30 seconds of code 中文翻譯:http://www.css88.com/30-seconds-of-code/

        mojs

        motion-for-the-web-3.png

        mojs是一個(gè)用于創(chuàng)建任何復(fù)雜的動態(tài)圖形和 Web 動畫庫,簡單而且動畫非常流暢。 它提供了聲明性語法。 它由簡單的聲明性API構(gòu)建,因此它也與跨設(shè)備瀏覽器兼容。

        mojs :https://github.com/legomushroom/mojs

        Voca

        用于字符串操作的JavaScript庫。 它包括有用的函數(shù),如change case, trim, pad,slugify,latinise,sprintf’y,truncate,escape等。 您可以在構(gòu)建時(shí)加載單個(gè)函數(shù)來最小化應(yīng)用程序。 該庫具有高測試覆蓋率,沒有其他依賴。

        voca :https://github.com/panzerdp/voca

        Licia

        這是一個(gè)有趣的項(xiàng)目,只有400多個(gè)stars,基本上是一個(gè)簡單卻又很有用 JavaScript 代碼片段集合,具有高級文檔和測試覆蓋率。 v2.0 在 master 上發(fā)布了預(yù)覽版本,并且維護(hù)和開發(fā)都很積極。

        你可以在?Hackernoon的文章?中了解更多信息。

        licia :https://github.com/liriliri/licia

        主要內(nèi)容來自?https://blog.bitsrc.io/11-javascript-utility-libraries-you-should-know-in-2018-3646fb31ade?,在此內(nèi)容上做了一些增加。


        原文:2018年你應(yīng)該知道的 15個(gè) JavaScript 實(shí)用程序庫

        瀏覽 214
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評論
        圖片
        表情
        推薦
        點(diǎn)贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
          
          

            1. 国产精品久久欠久久久久久九秃大 | 性做久久久久久免费观看 | 欧美激情一级欧美精品 | 激情五月天黄色电影 | 国产自偷自拍 |