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 小时前
【sgSelectExportDocumentType】自定义组件:弹窗dialog选择导出文件格式word、pdf,支持配置图标和格式名称,触发导出事件
vue.js·pdf·word
小杨快跑~2 小时前
Vue 3 + Element Plus 表单校验
前端·javascript·vue.js·elementui
我叫张小白。2 小时前
Vue3监视系统全解析
前端·javascript·vue.js·前端框架·vue3
WYiQIU7 小时前
11月面了7.8家前端岗,兄弟们12月我先躺为敬...
前端·vue.js·react.js·面试·前端框架·飞书
娃哈哈哈哈呀7 小时前
formData 传参 如何传数组
前端·javascript·vue.js
513495929 小时前
Vite环境变量配置
vue.js
2503_9284115610 小时前
11.24 Vue-组件2
前端·javascript·vue.js
weixin79893765432...11 小时前
Vue + Express + DeepSeek 实现一个简单的对话式 AI 应用
vue.js·人工智能·express
高级程序源11 小时前
springboot社区医疗中心预约挂号平台app-计算机毕业设计源码16750
java·vue.js·spring boot·mysql·spring·maven·mybatis
cypking11 小时前
Vue 3 + Vite + Router + Pinia + Element Plus + Monorepo + qiankun 构建企业级中后台前端框架
前端·javascript·vue.js