是时候抛弃JQ,回归原生js了……

以前我写过一篇文章叫作《jq不会被淘汰》……而事实上它真的不会被淘汰,由于即便在mvvm框架盛行的今天,原生js的api愈来愈友好的今天,jq依然在用户量上是霸主……vue

可是今天咱们要讨论的是,抛弃jq,拥抱原生js……react

再说正题以前,咱们先来看看jq比js,解决了哪些问题,哪里更优秀ajax

1.首当其冲是浏览器兼容,jq自己作了不少浏览器的兼容,这致使了它的代码变得臃肿,可是不得不说,这方面jq作的很好√后端

2.语法比较简洁,jq的代码语法是很简洁的,由于层层封装后,为的就是易用api

3.jq封装的ajax方法很好用,平时咱们作先后端分离的时候,请求数据是必不可少的,jq的ajax就比较优雅,而一样的,若是是原生js,写一个ajax代码量可很多……浏览器

我说咱们应该抛弃jq,拥抱原生,其实不是瞎说的……框架

首先,ie浏览器用户愈来愈少,现在已经不多不多了,就算通常人的浏览器装了ie内核的,它们多半也有个极速模式……那就是谷歌内核的……前后端分离

因此为了那一丢丢的用户,浏览器向下兼容变得不那么重要了……dom

与其作兼容,不如作引导,如ie下提示更换浏览器……mvvm

而后第二点,关于代码语法啥的,的确jq的语法很简洁,也长的比较好看,好比相同的操做一个id

jq:$('#id')​ 原生:document.getElementById('id')
​能够看到,虽然原生js的代码比较长,可是语义化很好啊,一看就知道get element by id ,就是取元素经过id……这理应是咱们该提倡的……虽然dom多了会变得很差看,可是……

一旦dom操做不少了就不提倡操做dom了,更提倡vue、react这种不直接操做dom(操做虚拟dom)的方案了……​

而后关于ajax,jq的确封装了比较好用的方法,原生不太方便,可是如今我我的比较提倡fetch,而不是ajax,因此原生js里彻底能够直接fetch替代ajax

因此jq的这个优点也不复存在了……

而后再说一下原生js的好处

首先就是性能好,这个真的没得说,毕竟是原生……

而后,原生js的api也在更新,如今的不少api都比较新比较能接受了……

再就是,在mvvm框架盛行的今天,咱们不可能在这些框架里引入jq,可是却能够自然的写原生js没毛病……

因此……综上所述……

仅表明我的观点哈,不接受反驳(⊙o⊙)…

目前在写的我的项目的后台部分就是原生js的技术桟,甚至都没有用vue,毕竟后台嘛,简陋点没啥的√

相关文章
相关标签/搜索