vue.js和jquery的区别

JavaScript015

vue.js和jquery的区别,第1张

一、主体不同

1、vue.js:是一套用于构建用户界面的渐进式JavaScript框架。

2、jquery:是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库。

二、特点不同

1、vue.js:Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。

2、jquery:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。

三、优势不同

1、vue.js:目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

2、jquery:提供了对基本JavaScript结构的增强,比如元素迭代和数组处理等操作。

参考资料来源:百度百科-jQuery

参考资料来源:百度百科-Vue.js

两者的区别是:一个是服务端语言,一个是前端框架。

1、nodejs是一个js运行于服务端的环境,是一个服务端语言;而vue是前端渲染的库,是一个前端框架。

2、Node用于方便地搭建响应速度快、易于扩展的网络应用;

3、而vue用于实现响应的数据绑定和组合的视图组件。是一套用于构建用户界面的渐进式JavaScript框架。

Node.js

是一个基于 Chrome V8 引擎的 JavaScript 运行环境。

Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

Node.js 的包管理器 npm,是全球最大的开源库生态系统。

Vue.js

是一个构建数据驱动的 web 界面的渐进式框架。

Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。它不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与单文件组件和 Vue 生态系统支持的库结合使用时,Vue 也完全能够为复杂的单页应用程序提供驱动。

2、Vue.js的优点

体积小:压缩后只有33k;

更高的运行效率:基于虚拟DOM,一种可以预先通过JavaScript进行各种计算,把最终的DOM操作计算出来并优化的技术,由于这种DOM操作属于预处理操作,并没有真实的操作DOM,所以叫做虚拟DOM;

双向数据绑定:让开发者不用再去操作DOM对象,把更多的精力投入到业务逻辑上;

生态丰富、学习成本低:市场上拥有大量成熟、稳定的基于vue.js的ui框架及组件,拿来即用实现快速开发;对初学者友好、入门容易、学习资料多;

3、为什么要使用Vue.js

随着前端技术的不断发展,前端开发能够处理的业务越来越多,网页也变得越来越强大和动态化,这些进步都离不开JavaScript。在目前的开发中,已经把很多服务端的代码放到了浏览器中来执行,这就产生了成千上万行的JavaScript代码,他们连接着各式各样的HTML和CSS文件,但是缺乏正规的组织形式。这也是为什么越来越多的前端开发者使用JavaScript框架的原因,目前比较流行的前端框架有Angular、Reac、Vue等。

Vue是一款友好的、多用途且高性能的JavaScript框架,它能够帮助你创建可维护性和可测试性更强的代码库。Vue是渐进式的JavaScript框架,也就是说,如果你已经有了现成的服务端应用,你可以将Vue作为该应用的一部分嵌入其中,带来更加丰富的交互体验。或者如果你希望将更多业务逻辑放到前端来实现,那么Vue的核心库及其生态系统也可以满足你的各式需求。

和其他框架一样,Vue允许你将一个网页分割成可复用的组件,每个组件都包含属于自己的HTML、CSS、JavaScript,以用来渲染网页中相应的地方。如果我们构建了一个大型的应用,可能需要将东西分割成为各自的组件和文件,使用Vue的命令行工具,使快速初始化一个真实的工程变得非常简单。

vue init webpack my-project

我们甚至可以使用Vue的单文件组件,它包含了各自的HTML、JavaScript以及带作用域的CSS或SCSS。

4、MVC、MVP、MVVM 设计模式

MVC(Model-View-Controller)是最常见的软件架构之一,在软件开发领域有着广泛的应用,MVC本身是比较好理解的,但是要讲清楚由它衍生出来的MVP和MVVM就不太容易了。

4.1、MVC

MVC的意思是,可以将软件分为三个部分:

视图(View):用户界面

控制器(Controller):业务逻辑

模型(Model):数据保存

各部分之间的通信方式为:

View传送指令到Controller

Controller完成业务逻辑后,要求Model改变状态

Model将新的数据发送到View,用户得到反馈

并且所有的通信都是单向的,如下图所示:

请点击输入图片描述

MVC 模式的执行流程是有两种方式:

(1)通过View接受指令,传递给Controller

请点击输入图片描述

(2)直接通过Controller接受指令

请点击输入图片描述

实际项目中往往采用更加灵活的方式:

(1)用户可以向View发送指令(DOM事件),再由View直接要求Model改变状态;

(2)用户也可以直接向Controller发送指令(改变URL触发hashChange事件),再由Controller发送给view

(3)Controller非常薄,只起到路由的作用,而View非常厚,业务逻辑都部署在View,所以有些框架里就直接取消了Controller,只保留一个Router(路由器)。