Vue、jquery和angular之间区别

aVue、jquery、angular之间区别

angular与jquery区别

三个版本的输入数据绑定,都是单页面应用。

Angular

javascript 复制代码
	<body ng-app>
		<input type="text" ng-model="name">
		<p>{{name}}</p>
	</body>
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>

jquery

javascript 复制代码
<body>
	<input type="text">
	<p></p>
</body>
<script src="jquery-3.3.1.js"></script>
<script>
	$(function(){
		$('input').keyup(function(){
			let value=this.value;
			console.log(value)
			$('p').html(value)
		})
	})
</script>

Vue.js

javascript 复制代码
</head>
<body>
<div id="app">
	<input type="text" v-model="message">
  <p>{{ message }}</p>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    message: 'Vue.js!'
  }
})
</script>

显而易见的是,拥有双向数据绑定的angular用更轻量的代码做了相同的事。

1.从理论来看,jquery在创建之初了为了解决前端在浏览器之中的样式兼容性问题,它是一个js库,而angular是一种前端框架,前者是用于调用库来更便捷的写代码,后者是写代码在这个框架中,在它所创造的体系中进行实际的应用。

2.jquery不支持双向数据绑定,angular&Vue支持。

3.jquery的API大多数需要和DOM联系,而angular较少的使用DOM,避免了一定的重排重绘问题。

4.jquery应用于单页面程序开发,angular既适用于单页面开发,也被使用在app、云平台等多个整体应用中。

5.jquery主要用$+DOM进行协同开发,angular有一套自定义指令来进行使用,如ngIf ngFor ngModel等等。

6.与node&typescript结合的angular有着更强大的初始化项目能力,能够快速利用命令行创建初始项目。

angular和Vue

这两个都是双向数据绑定。不同的是

1.核心库与生态:Vue核心库较小,生态较新,angular核心库较大,生态较稳定。前者较易学习,后者相对较难。

2。双向绑定:Vue基于ES5中的getter/setter,angular基于它原生的模板编译规则和脏检查

缺点:

Vue:对IE9以下浏览器不支持,但性能较angular高效。

Angular:作用域有变化时,所有监听都需要重新被脏检查,监听越多angular越慢,脏检查循环需要执行多次。而解决这个问题对于前端来说并不容易。

3.指令不同:angular:ng-x Vue:v-x

4.angular由google维护,Vue由个人维护。

5.通信:Vue为了让通信数据流更清晰易懂,在不同组件间通信强制使用单向数据绑定,Angular双向数据绑定。

相关推荐
想退休的搬砖人1 小时前
vue选项式写法项目案例(购物车)
前端·javascript·vue.js
啥子花道2 小时前
Vue3.4 中 v-model 双向数据绑定新玩法详解
前端·javascript·vue.js
清灵xmf2 小时前
揭开 Vue 3 中大量使用 ref 的隐藏危机
前端·javascript·vue.js·ref
学习路上的小刘2 小时前
vue h5 蓝牙连接 webBluetooth API
前端·javascript·vue.js
&白帝&2 小时前
vue3常用的组件间通信
前端·javascript·vue.js
冯宝宝^3 小时前
基于mongodb+flask(Python)+vue的实验室器材管理系统
vue.js·python·flask
cc蒲公英4 小时前
Vue2+vue-office/excel 实现在线加载Excel文件预览
前端·vue.js·excel
森叶4 小时前
Electron-vue asar 局部打包优化处理方案——绕开每次npm run build 超级慢的打包问题
vue.js·electron·npm
小小竹子5 小时前
前端vue-实现富文本组件
前端·vue.js·富文本
青稞儿5 小时前
面试题高频之token无感刷新(vue3+node.js)
vue.js·node.js