簡(jiǎn)單介紹一些框架/庫(kù)

underScore.js

  • Underscore一個(gè)JavaScript實(shí)用庫(kù),提供了一整套函數(shù)式編程的實(shí)用功能,但是沒(méi)有擴(kuò)展任何JavaScript內(nèi)置對(duì)象。(方法總以“_.”開(kāi)頭)
    詳見(jiàn):

http://www.css88.com/doc/underscore/

mousewheel

  • jQuery Mousewheel Plugin,用于添加跨瀏覽器的鼠標(biāo)滾輪支持。
    mousewheel事件的處理函數(shù)有一點(diǎn)小小的變化,它除了第一個(gè)參數(shù)event 外,還接收到第二個(gè)參數(shù)delta。
    通過(guò)參數(shù)delta可以獲取鼠標(biāo)滾輪的方向和速度。
    如果delta的值是負(fù)的即-1,那么滾輪就是向下滾動(dòng),正的1就是向上。

https://github.com/jquery/jquery-mousewheel

prototype.js

  • 原生JS存在的不便之處:
    • 原生JS寫(xiě)構(gòu)造函數(shù)、繼承,都是利用原型鏈;
    • 語(yǔ)句不在一個(gè)結(jié)構(gòu)塊里面,看起來(lái)相對(duì)比較糾結(jié);
  • 實(shí)際開(kāi)發(fā)中:
    • 很少有人直接使用原生JS來(lái)面向?qū)ο?
    • github上有很多的開(kāi)源庫(kù)可以更好面向?qū)ο螅容^出名的叫做prototype.js。
  • 官網(wǎng):
    • http://prototypejs.org/
      只看prototype中類的繼承、創(chuàng)建部分:http://prototypejs.org/learn/class-inheritance

    • 下載: http://cdn.code.baidu.com/
    • Prototype就是為了我們簡(jiǎn)化自己的類、繼承用的。但是Prototype現(xiàn)在涵蓋了選擇框架、運(yùn)動(dòng)框架、Ajax框架。太重了,所以我們不使用Prototype。
    • 使用jQuery的創(chuàng)始人,編寫(xiě)的一個(gè)簡(jiǎn)單繼承框架simple inheritence。

simple inheritence

  • jQuery的創(chuàng)始人,編寫(xiě)的一個(gè)簡(jiǎn)單繼承框架simple inheritence;見(jiàn)上面prototype.js功能介紹。
  • 官網(wǎng):

http://ejohn.org/blog/simple-javascript-inheritance/

  • 相對(duì)于下面的base2,simple inheritence用的更廣泛。

base2

  • base2 和上面的 simple inheritence都是為了繼承功能而寫(xiě)的繼承框架,其中 simple inheritence是在base2的基礎(chǔ)上寫(xiě)的。語(yǔ)法相似。
  • 把"Class"替換成基類的名字即實(shí)現(xiàn)了繼承, simple inheritence同。

var Person = Class.extend ( {});
var Student = Person.extend({});//Student繼承自Person類。

zepto

  • jQery主要用在PC端;移動(dòng)端開(kāi)發(fā)框架zepto.js(PC端也可以用)。
  • zepto.js用法:用jquery寫(xiě)出來(lái)的代碼塊直接把jquery包換成zepto包,某些功能需要到zepto官網(wǎng)下載相關(guān)功能插件模塊。zepto包默認(rèn)只集成了一部分jQuery的功能,其它的需要到zepto官網(wǎng)下載引用。
  • zepto.js底層原理是CSS3,jquery底層是DOM。

echarts / G2 / highCharts

  • 在ng2+可以引入ngx-echarts來(lái)使用echarts。
  • g2-react用在react開(kāi)發(fā)的項(xiàng)目中比較方便。

ant design家族

  • 我在項(xiàng)目中用過(guò):ng-zorro / ant design / ant design pro / antV / dva

qs庫(kù)

  • 這里只介紹qs.stringify方法與JSON.stringify的區(qū)別:
var a = {name:'hehe',age:10};

上面的json對(duì)象qs.stringify序列化結(jié)果如下:

name=hehe&age=10

而JSON.stringify序列化結(jié)果如下:

"{"a":"hehe","age":10}" 

總結(jié):從以上簡(jiǎn)單的對(duì)比,我們可以發(fā)現(xiàn)qs庫(kù)的這個(gè)方法用在get請(qǐng)求拼接url時(shí)特別好。

serialize-javascript庫(kù)

  • serialize用于將JSON轉(zhuǎn)換為字符串,它和JSON.stringify()的區(qū)別在于可以輸出JSON中的函數(shù)和正則表達(dá)式。
  • 另外,它也包含自動(dòng)編碼功能來(lái)防止XSS攻擊。
  • 點(diǎn)擊查看詳情

不斷更新中......................................................

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容