zoukankan      html  css  js  c++  java
  • 是时候抛弃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,毕竟后台嘛,简陋点没啥的√

  • 相关阅读:
    vmware 搭建内外网分开的三台centos7.9虚拟机
    CentOS 7 搭建frp内网穿透服务端
    CentOS 7 搭建frp内网穿透客户端
    Redis设计与实现读书笔记
    easyui 下拉框绑定成功之后,又无法显示
    easyui 实现后一个弹框向前一个弹框传值
    学会这七个Python GUI图形界面化库,就没有做不出来的界面!超有用!
    最新!用Python免费连接附近WiFi教程!没有我蹭不到的网!
    用Python实现九九乘法表的几种方式,入门必备案例!超级简单!
    为了每天准时看到冰冰,我用Python写了个自动提醒脚本,美滋滋!
  • 原文地址:https://www.cnblogs.com/yisaer/p/7874871.html
Copyright © 2011-2022 走看看