jquery和vue对比实例分析

很多人说jquey和vue没有什么可比的,应该和angular,react来比吧,我到觉得他们倒没有多大的可比性,都是基于mvvm思想设计的框架,无非就是实现的方式不一样,在不同场景下性能上会有一些差异。然而从jquery到vue或者说是到mvvm的转变则是一个思想想的转变,是将原有的直接操作dom的思想转变到操作数据上去,难道不是一个根本性的改变吗?

1.jquery介绍:想必大家都用过jquery吧,这个曾经也是现在依然最流行的web前端js库,可是现在无论是国内还是国外他的使用率正在渐渐被其他的js库所代替,随着浏览器厂商对HTML5规范统一遵循以及ECMA6在浏览器端的实现,jquery的使用率将会越来越低

2.vue介绍:vue是一个兴起的前端js库,是一个精简的MVVM。从技术角度讲,Vue.js 专注于 MVVM 模型的 ViewModel 层。它通过双向数据绑定把 View 层和 Model 层连接了起来,通过对数据的操作就可以完成对页面视图的渲染。当然还有很多其他的mvmm框架如Angular,React都是大同小异,本质上都是基于MVVM的理念。 然而vue以他独特的优势简单,快速,组合,紧凑,强大而迅速崛起

3.vue和jquey对比 

jQuery是使用选择器($)选取DOM对象,对其进行赋值、取值、事件绑定等操作,其实和原生的HTML的区别只在于可以更方便的选取和操作DOM对象,而数据和界面是在一起的。比如需要获取label标签的内容:$(“lable”).val();,它还是依赖DOM元素的值。 

立即学习“前端免费学习笔记(深入)”;

Vue则是通过Vue对象将数据和View完全分离开来了。对数据进行操作不再需要引用相应的DOM对象,可以说数据和View是分离的,他们通过Vue对象这个vm实现相互的绑定。这就是传说中的MVVM。

4.举例说明

场景一:列表添加一个元素,下图为vue和jquery两种操作的代码,我们从中可以看出vue只需要向数据message里面push一条数据即可完成添加一个li标签的操作,而jquery则需要获取dom元素节点,并对dom进行添加一个标签的操作,如果dom结构特别复杂,或者添加的元素非常复杂,则代码会变得非常复杂且阅读性低

vue:

复制代码

        

  • {{item}}

new Vue({ el: '#app', data: { message: ["第1条数据","第2条数据"], i:2 }, methods:{ //向数组添加一条数据即可 add:function(){ this.i++ this.message.push("第"+this.i+"条数据") } } })

登录后复制

复制代码

jquery:

复制代码

        

  • 第1条数据
  • 第2条数据

$(document).ready(function() { var i=2; $('#add').click(function() { i++; //通过dom操作在最后一个li元素后手动添加一个标签 $("#list").children("li").last().append("
  • 第"+i+"条数据
  • ") }); });

    登录后复制

    复制代码

     

    jquery和vue对比实例分析

     

    场景二:控制按钮的显示隐藏,下图为vue和jquery两种操作的代码,我们从中可以看出vue只需要控制属性isShow的值为true和false即可,而jquery则还是需要操作dom元素控制按钮的显示和隐藏

    vue:

    复制代码

            

    • {{item}}

    new Vue({ el: '#app', data: { message: ["第1条数据","第2条数据"], i:2, isShow:true }, methods:{ //向数组添加一条数据即可 add:function(){ this.i++ this.message.push("第"+this.i+"条数据") }, //控制isShow的值即可 showButton:function(){ this.isShow=false; } } })

    登录后复制

    复制代码

     

    jquery:

    复制代码

            

    • 第1条数据
    • 第2条数据

    $(document).ready(function() { var i=2; $('#add').click(function() { i++; //通过dom操作在最后一个li元素后手动添加一个标签 $("#list").children("li").last().append("
  • 第"+i+"条数据
  • ") }); //需要手动隐藏dom元素 $("#showButton").click(function(){ $("#add").hide() }) });

    登录后复制

    复制代码

     

     

     输出结果:

    jquery和vue对比实例分析

     

     

    4.总结:内容讲的比较浅,主要就是分析一下vue和jquey对比的区别,上面两个例子只是做了一个简单的说明,然而vue能解决的问题远比这些要多的多,复杂的多。

            vue适用的场景:复杂数据操作的后台页面,表单填写页面

            jquery适用的场景:比如说一些html5的动画页面,一些需要js来操作页面样式的页面

        然而二者也是可以结合起来一起使用的,vue侧重数据绑定,jquery侧重样式操作,动画效果等,则会更加高效率的完成业务需求

     

    5. 附上公司前端目录结构,感兴趣的可以分享代码给大家看看 

     src代码目录包含assets静态文件,components vue组件文件,plugins 插件文件(包含登录操作,http请求操作,过滤器,加解密操作,公共方法等),router 路由文件,store vuex文件,app.js vue相关配置,index.html主页面

    jquery和vue对比实例分析

     

    build目录为webpack打包文件,dist目录为打包后生成的文件,node_modules 引用的外部组件 

    jquery和vue对比实例分析  jquery和vue对比实例分析

    补充阅读:

    1.jQuery首先要获取到dom对象,然后对dom对象进行进行值的修改等操作
    2.Vue是首先把值和js对象进行绑定,然后修改js对象的值,Vue框架就会自动把dom的值就行更新。
    3.可以简单的理解为Vue帮我们做了dom操作,我们以后用Vue就需要修改对象的值和做好元素和对
    象的绑定,Vue这个框架就会自动帮我们做好dom的相关操作
    4.这种dom元素跟随JS对象值的变化而变化叫做单向数据绑定,如果JS对象的值也跟随着dom元素的
    值的变化而变化就叫做双向数据绑定
    用一个简单的例子来说明编写Jquery和Vue上的不同
    修改文字
    点击按钮后:
    jquery和vue对比实例分析
    改为

    jquery和vue对比实例分析

    (1)jQuery代码

    nbsp;html>        

        

    大家好,我是张三!

        

    我是一名医生.

         $("#modifyBtn").click(function(){ $("#name").text("李四"); $("#jop").text("老师"); });

    登录后复制

    (2)Vue代码

    nbsp;html>Vue

        

    大家好,我是{{name}}!

        

    我是一名{{jop}}.

        new Vue({ el: '#app', data:{ name:"张三", jop:"医生" }, methods:{ modifyInfo:function(){ this.name = "李四"; this.jop = "老师"; } } })

    登录后复制

    相关推荐:

    vue与jquery实时监听用户输入状态代码分享

    jQuery表单元素选择器实例讲解

    jQuery基础语法使用方法

    以上就是jquery和vue对比实例分析的详细内容,更多请关注【创想鸟】其它相关文章!

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

    发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2785103.html

    (0)
    上一篇 2025年3月8日 17:19:47
    下一篇 2025年3月8日 17:20:40

    AD推荐 黄金广告位招租... 更多推荐

    相关推荐

    • 简单的jQuery点击水纹波动动画示例

      这次给大家带来简单的jquery点击水纹波动动画示例,用jquery做出点击水纹波动画注意事项有哪些,下面就是实战案例,一起来看一下。 jQuery点击水纹波动动画原理:    1.在需要实现水波纹效果的标签中添加    2.代码会定位 鼠…

      编程技术 2025年3月8日
      200
    • 一份好用的jquery的表单验证插件

      这次给大家带来一份好用的jquery的表单验证插件,使用jquery的表单验证插件的注意事项有哪些,下面就是实战案例,一起来看一下。 jquery的validate插件前置知识:默认校验规则 使用方法:按顺序引入jquery.js、jque…

      编程技术 2025年3月8日
      200
    • 基于jquery的一个懒加载组件

      这次给大家带来基于jquery的一个懒加载组件,基于jquery的懒加载组件的注意事项有哪些,下面就是实战案例,一起来看一下。 #home { background: rgba(245, 245, 245, .8); width: 1000…

      编程技术 2025年3月8日
      200
    • 15个jQuery小技巧分享

      本文主要和大家分享15 个jQuery小技巧(干货)相关教程,具体实例代码请看下文,希望能帮助到大家。 1.返回顶部按钮 你可以利用animate和scrollTop来实现返回顶部的动画,而不需要使用其他插件。 ? code 1 2 3 $…

      编程技术 2025年3月8日
      200
    • 如何使用jquery的分页插件

      这次给大家带来如何使用jquery的分页插件,如何使用jquery的分页插件的注意事项有哪些,下面就是实战案例,一起来看一下。 jqpaginator简洁、高度自定义的jquery分页组件,适用于多种应用场景。 简介 现在网上各种各样的分页…

      2025年3月8日
      200
    • jQuery怎样做出碰到框框边缘即可反弹的动画效果

      这次给大家带来jquery怎样做出碰到框框边缘即可反弹的动画效果,做出jquery碰到框框边缘即可反弹的动画效果的注意事项有哪些,下面就是实战案例,一起来看一下。 先上效果图: 录出来有点卡顿的赶脚,实际上还是挺顺畅的。 1.HTML: 登…

      2025年3月8日
      200
    • jQuery怎样获取并且修改P标签内的值

      这次给大家带来jQuery怎样获取并且修改P标签内的值,jQuery获取并且修改P标签内的值注意事项有哪些,下面就是实战案例,一起来看一下。 Web前台页面中有一P标签值, 该用户名已被注册 登录后复制 想通过jquery改变该P标签的内容…

      编程技术 2025年3月8日
      200
    • jQuery怎样获取标签子元素的值

      这次给大家带来jQuery怎样获取标签子元素的值,jQuery获取标签子元素的值的注意事项有哪些,下面就是实战案例,一起来看一下。 一、在jsp页面中定义标签,如下: 科室: 登录后复制 二、编写js语句: $(function () {v…

      2025年3月8日
      200
    • jquery怎样给动态生成的标签绑定事件

      这次给大家带来jquery怎样给动态生成的标签绑定事件,jquery给动态生成的标签绑定事件的注意事项有哪些,下面就是实战案例,一起来看一下。 经常遇到给动态生成的标签绑定事件不好用,自己简单测试总结了下,结论如下了: 生成a标签$(fun…

      编程技术 2025年3月8日
      200
    • jquery添加带有样式的HTML标签

      这次给大家带来jquery添加带有样式的html标签,jquery添加带有样式的html标签的注意事项有哪些,下面就是实战案例,一起来看一下。 如下所示: 登录后复制     上传计划单     添加          希望实现的功能是:当…

      编程技术 2025年3月8日
      200

    发表回复

    登录后才能评论