jQuery is a lightweight and feature-rich JavaScript Library that helps web developers
by simplifying the usage of client-side scripting for web applications using JavaScript.
It extensively simplifies using JavaScript on a website and it’s lightweight as well as fast.
So, using jQuery, we can:
easily manipulate the contents of a webpage
apply styles to make UI more attractive
easy DOM traversal
effects and animation
simple to make AJAX calls and
utilities and much more…
AngularJS :-
AngularJS is a product by none other the Search Engine Giant Google and it’s an open source
MVC-based framework(considered to be the best and only next generation framework). AngularJS
is a great tool for building highly rich client-side web applications.
As being a framework, it dictates us to follow some rules and a structured approach. It’s
not just a JavaScript library but a framework that is perfectly designed (framework tools
are designed to work together in a truly interconnected way).
In comparison of features jQuery Vs AngularJS, AngularJS simply offers more features:
Two-Way data binding
REST friendly
MVC-based Pattern
Deep Linking
Template
Form Validation
Dependency Injection
Localization
Full Testing Environment
Server Communication
6 回答
对于开发人员,Angular2提供了一些除了在屏幕上显示数据之外的功能例如,使用angular2 cli工具可以帮助您"pre-compile"您的代码并生成必要的JavaScript代码(tree-shaking),将下载大小缩小到35Kish .
这为服务器渲染打开了一扇门,可以解决SEO问题并使用Nativescript等无法在浏览器上运行 .
The official document site
Day one keynote from ng-conf 2016
Resource links Original: 基本上,jQuery是一个很好的工具,可以让你操作和控制DOM元素 . 如果您只关注DOM元素而不关注数据CRUD,比如构建网站而不是Web应用程序,那么jQuery就是最重要的工具之一 . (您也可以将AngularJS用于此目的 . )
AngularJS是 framework . 它具有以下功能
双向数据绑定
MVW模式(MVC-ish)
模板
Custom-directive(可重用组件,自定义标记)
REST友好
深度链接(为任何动态页面设置链接)
表单验证
服务器通信
本地化
依赖注入
完整的测试环境(单位,e2e)
检查这个presentation和great introduction
别忘了阅读官方developer guide
或者从这些真棒中学习video tutorials
如果您想观看更多教程视频,请查看此帖子,Collection of best 60+ AngularJS tutorials .
你可以在没有任何问题的情况下使用jQuery和AngularJS .
事实上,AngularJS使用了jQuery lite,这是一个很棒的工具 .
来自FAQ
但是,不要尝试使用jQuery来修改AngularJS控制器中的DOM,在指令中执行它 .
Update:
Angular2发布了 . Here 是一个很棒的初学者资源列表
我想从开发人员的角度为 jQuery 添加一些关于 AngularJS 差异的内容 .
在AngularJS中,您必须拥有一个非常好的视图和方法来实现您想要完成的任务 . 它几乎不遵循完成任务的方式,而是各种对象之间的交换处理请求和操作,然后,这是必要的,因为角度是一个框架 . 它还需要最终应用程序的一般蓝图,因为编码很大程度上取决于您希望如何完成交互 .
jQuery就像是一首诗,你可以写出一些线条并保持一些适合你完成任务的关系和动力 .
虽然,在Angular JS中,你应该遵循一些规则以及保持适当的动量和关系,也许它更像是古典的斯宾塞十四行诗(一位着名的古典诗人),其诗歌是结构性的并且与许多规则联系在一起 .
与AngularJS相比,jQuery更像是代码和函数的集合(正如已经提到的,它非常适合DOM操作和快速效果),而AngularJS是一个真正的框架,它使开发人员能够构建企业Web - 在一个组织良好的路由和管理中应用大量数据绑定和交换 .
此外,AngularJS没有 dependency on jQuery 完成其任务 . 它有两个非常出色的功能,在任何意义上都没有在jQuery中找到:
1- Angular JS教你如何代码和完成目标,而不仅仅是通过任何方式实现目标 . 值得一提的是,AngularJS充分利用了Javascripts的核心和核心,为您在应用程序中整合DI(依赖注入)等技术铺平了道路 . 要使用angularJS,您应该(或必须)学习使用Javascript编写更多高级编码技术 .
2- Angular JS完全独立于处理指令和构建您的应用程序;你可能只是声称jQuery可以做到相同(独立),但实际上,AngularJS,在上述几行中提到的几次,在最优秀的可能的结构MVC方式中具有独立性 .
最后一点是,没有名字的战争,因为偏见或主观是非常令人不安的 . jQuery的规模和优势已被证明,但他们的用法和限制(任何框架或软件)都是讨论和类似辩论的关注点 .
Update:
使用AngularJS是决定性的,因为它在实现方面很昂贵,但是为应用程序的未来扩展,转换和维护奠定了坚实的基础 . AngularJS适用于Web的新世界 . 它的目标是构建应用程序,这些应用程序的特点是资源消耗最少(仅从服务器加载必要的资源),快速响应时间以及高度可维护性和可扩展性,包含在结构化系统中 .
AngularJS : AngularJS用于开发繁重的Web应用程序 . 当应用程序被引导时,AngularJS可以使用jQuery,如果它存在于web-app中 . 如果脚本路径中没有它,那么AngularJS会回退到它自己的jQuery子集实现 .
JQuery : jQuery是一个小巧,快速且功能丰富的JavaScript库 . 它使HTML文档遍历和操作,事件处理,动画和Ajax等操作变得更加简单 . jQuery简化了许多来自JavaScript的复杂事物,比如AJAX调用和DOM操作 .
在这里阅读更多详情:angularjs-vs-jquery
我认为this是一个描述差异的非常好的图表 . 快速浏览一下就会发现大部分差异 .
我想补充的一点是, AngularJS 可以遵循 MVVM 设计模式,而 jQuery 不遵循任何标准的面向对象模式 .
他们在不同的层面上工作 .
查看差异的最简单方法是 from a beginner perspective 本质上是JavaScript的摘要,因此我们为JavaScript设计页面的方式几乎就是我们如何为jQuery做的 . 从DOM开始,然后在其上构建一个行为层 . Angular.Js不是这样 . 这个过程真正从头开始,所以最终结果是理想的视图 .
使用jQuery进行dom操作,使用Angular.Js可以创建完整的Web应用程序 .
jQuery用于抽象出各种浏览器特性,并且无需添加IE6检查等即可使用DOM . 随着时间的推移,它开发了一个漂亮,强大的API,它允许我们做很多事情,但从本质上讲,它用于处理DOM,查找元素,更改UI等等 . 可以把它想象成直接使用螺母和螺栓 .
Angular.Js是作为jQuery之上的图层构建的,用于将MVC概念添加到前端工程中 . Angular.Js不是为您提供使用DOM的API,而是为您提供数据绑定,模板化,自定义组件(类似于jQuery UI,但声明而不是通过JS触发)以及更多内容 . 可以把它想象成更高层次的工作,可以将组件连接在一起,而不是直接在螺母和螺栓水平上 .
Additionally ,Angular.Js为您提供适用于各种项目的结构和概念,例如控制器,服务和指令 . jQuery本身可以用多种(gazillion)方式来做同样的事情 . 值得庆幸的是,使用Angular.Js可以减少这种情况,这样可以更轻松地进出项目 . 它为多人提供了一种理智的方式,可以为同一个项目做出贡献,而无需从头开始重新学习系统 .
A short comparison can be this-
jQuery
对CSS选择器有相关知识的人可以轻松使用
这是一个用于DOM操作的库
与模型无关
轻松操纵网页内容
应用样式以使UI更具吸引力
Easy DOM遍历
效果和动画
简单地进行AJAX调用和
实用程序可用性
没有双向绑定功能
当项目规模增加时,
变得复杂且难以维护
有时您必须编写更多代码才能实现与Angular.Js中相同的功能
Angular.Js
这是一个MVVM框架
用于创建SPA(单页应用程序)
它具有路由等关键功能,指令,双向数据绑定,模型,依赖注入,单元测试等
是模块化的
当项目规模增加时可维护
很快
双向数据绑定REST友好的基于MVC的模式
深层链接
模板
内置表单验证
依赖注入
本地化
完整的测试环境
服务器通信
以及更多
认为这有帮助 .
More can be found -
jQuery vs. AngularJS: A Comparison and Migration Walkthrough
"Thinking in AngularJS" if I have a jQuery background?
What are the key differences between jQuery and AngularJS?
jQuery Vs AngularJS – A Good Comparison
What is the difference between jQuery and AngularJS?
Jquery :-
AngularJS :-