是時候拋棄JQ,回歸原生js了……


之前我寫過一篇文章叫做《jq不會被淘汰》……而事實上它真的不會被淘汰,因為即使在mvvm框架盛行的今天,原生js的api越來越友好的今天,jq依然在用戶量上是霸主……

但是今天我們要討論的是,拋棄jq,擁抱原生js……

再說正題之前,我們先來看看jq比js,解決了哪些問題,哪里更優秀

1.首當其沖是瀏覽器兼容,jq本身做了很多瀏覽器的兼容,這導致了它的代碼變得臃腫,但是不得不說,這方面jq做的很好√

2.語法比較簡潔,jq的代碼語法是很簡潔的,因為層層封裝后,為的就是易用

3.jq封裝的ajax方法很好用,平時我們做前后端分離的時候,請求數據是必不可少的,jq的ajax就比較優雅,而同樣的,如果是原生js,寫一個ajax代碼量可不少……

我說我們應該拋棄jq,擁抱原生,其實不是瞎說的……

首先,ie瀏覽器用戶越來越少,如今已經很少很少了,就算一般人的瀏覽器裝了ie內核的,它們多半也有個極速模式……那就是谷歌內核的……

所以為了那一丟丟的用戶,瀏覽器向下兼容變得不那么重要了……

與其做兼容,不如做引導,如ie下提示更換瀏覽器……

然后第二點,關於代碼語法啥的,的確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,畢竟后台嘛,簡陋點沒啥的√


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM