AngularJS和jQuery有什么不同

我只知道一个js库,那就是jQuery 但是我在组中的其他编码员正在改变AngularJS作为他们在新项目中的默认库 我对此一无所知。它与jQuery有什么不同?< br > 我已经在jQuery中为类似的任务做了一组函数。我还能在AngularJS中使用jQuery的东西吗?< / p >
209594 次浏览
  1. Angular 1是一个框架,而Angular 2是一个平台。(裁判)

对于开发者来说,Angular2除了在屏幕上显示数据之外,还提供了一些其他的特性。例如,使用angular2 cli工具可以帮助你“预编译”你的代码,并生成必要的javascript代码(tree-shaking),将下载大小缩小到35Kish。

  1. Angular2模拟Shadow DOM。(裁判)

这为服务器渲染打开了一扇门,可以解决SEO问题,并与不能在浏览器上工作的Nativescript等一起工作。

  • < a href = " https://angular。io/" rel="noreferrer">正式文档站点 . io/" rel="noreferrer">正式文档站点

  • < a href = " https://youtu.be/gdlpE9vPQFs?list=PLOETEcp3DkCq788xapkP_OU-78jhTf68j" rel="noreferrer"> ng-conf 2016第一天的主题演讲

  • 资源链接 原: 基本上,jQuery是操作和控制DOM元素的好工具。 如果你只关注DOM元素,而不关注Data CRUD,比如构建一个网站而不是web应用程序,jQuery是最好的工具之一。(你也可以使用AngularJS来实现这个目的。)

AngularJS是一个框架。它有以下特点

  1. 双向数据绑定
  2. MVW模式(近似mvc)
  3. 模板
  4. 定制指令(可重用组件,定制标记)
  5. REST-friendly
  6. 深度链接(为任何动态页面设置链接)
  7. 表单验证
  8. 服务器通信
  9. 本地化
  10. 依赖注入
  11. 完整的测试环境(包括单元、端到端)

检查这个演讲和这个伟大的介绍

别忘了阅读官方的开发人员指南

或者从这些很棒的视频教程中学习

如果你想看更多的教程视频,看看这个帖子,收集最好的60+ AngularJS教程

你可以在AngularJS中使用jQuery,没有任何问题。

事实上,AngularJS使用了jQuery lite,这是一个很棒的工具。

常见问题解答

Angular使用jQuery库吗?

是的,Angular可以使用jQuery,如果它出现在你的应用中 应用程序正在引导。如果jQuery没有出现在您的 脚本路径,Angular就会退回到它自己的 jQuery的子集,我们称之为jQLite

但是,不要尝试使用jQuery来修改AngularJS控制器中的DOM,在你的指令中做。

更新:

Angular2被释放。这里对于初学者来说是一个很棒的资源列表

我想从开发人员的角度添加一些关于AngularJSjQuery的差异的东西。

在AngularJS中,你必须有一个非常结构化的视图和方法来完成你想要完成的事情。它几乎不遵循线性的方式来完成任务,而是不同对象之间的交换来处理请求和操作,这是必要的,因为angular是一个基于mvc框架。它还至少需要最终应用程序的一般蓝图,因为编码在很大程度上取决于您希望如何完成交互。

jQuery就像一首免费的的诗,你写几行诗,并为你要完成的任务保持适当的关系和势头。

虽然,在Angular JS中,你应该遵循一些规则,并保持适当的势头和关系,也许它更像经典的斯宾塞十四行诗(著名的古典诗人),他的诗是结构化的,并与许多规则捆绑在一起。

与AngularJS相比,jQuery更像是一个代码和函数的集合(正如前面提到的,它非常适合DOM操作和快速实现),而AngularJS是一个真正的框架,它让开发人员能够构建一个企业web应用程序,其中包含大量的数据绑定和交换,并且组织得非常好——路由和管理。

此外,AngularJS没有依赖jQuery来完成它的任务。它有两个非常出色的特性,这在任何意义上都是jQuery所没有的:

Angular JS教你如何编写代码并实现一个目标,而不仅仅是通过任何方式来实现一个目标。值得一提的是,AngularJS充分利用了javascript的核心和核心,并为你在应用程序中融入DI(依赖注入)等技术铺平了道路。要使用angularJS,你应该(或者必须)学习更多高级的Javascript编码技术。

Angular JS完全独立于处理指令和结构你的应用;然后你可能会简单地说jQuery也可以做到这一点(独立性),但是,确实,AngularJS,正如上面几行中提到的那样,以最优秀的基于mvc的结构方式具有独立性。

最后要说明的是,没有名字之战,因为偏见或主观是非常令人不安的。jQuery的巨大和伟大已经得到了证明,但它们的用途和局限性(任何框架或软件)是讨论和类似争论的焦点。

更新:

使用AngularJS是决定性的,因为它的实现成本很高,但为未来应用程序的扩展、转换和维护奠定了坚实的基础。AngularJS是Web新世界的代表。它的目标是构建具有以下特点的应用程序:围绕结构化系统消耗最少的资源(只从服务器加载必要的资源)、快速响应时间以及高度的可维护性和可扩展性。

< >强AngularJS: AngularJS是用于开发重型web应用程序的。当应用程序启动时,AngularJS可以使用jQuery,如果jQuery出现在web应用程序中。如果它没有出现在脚本路径中,那么AngularJS将退回到它自己的jQuery子集的实现

< >强JQuery: jQuery是一个小型、快速且功能丰富的JavaScript库。它使HTML文档遍历和操作、事件处理、动画和Ajax等事情变得更加简单。jQuery从JavaScript中简化了很多复杂的事情,比如AJAX调用和DOM操作

阅读更多详细信息:angularjs-vs-jquery

我认为是一个很好的图表,概括地描述了差异。快速浏览一下就会发现大部分的不同之处。

enter image description here

我想补充的一件事是,AngularJS可以遵循MVVM设计模式,而jQuery不遵循任何标准的面向对象模式。

Jquery: -

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

他们在不同的层次上工作。

最简单的方式来看待差异,从初学者的角度来看jQuery本质上是一个JavaScript的抽象,所以我们为JavaScript设计页面的方式几乎是我们为jQuery设计页面的方式。从DOM开始,然后在此基础上构建一个行为层。而Angular.Js则不是这样。这个过程实际上是从头开始的,所以最终的结果是理想的视图。

jQuery你做dom操作,用Angular.Js你创建整个web应用程序。


jQuery被构建来抽象出各种浏览器特性,并与DOM一起工作,而不必添加IE6检查等等。随着时间的推移,它开发了一个不错的、健壮的API,允许我们做很多事情,但它的核心是用于处理DOM、查找元素、更改UI等等。把它想象成直接用螺母和螺栓工作。

Angular.Js被构建为jQuery之上的一层,将MVC概念添加到前端工程中。Angular.Js并没有为你提供使用DOM的api,而是为你提供了数据绑定、模板、自定义组件(类似于jQuery UI,但是声明性的,而不是通过JS触发)以及其他很多东西。可以把它看作是在更高的级别上工作,使用可以连接在一起的组件,而不是直接在螺母和螺栓级别上工作。

另外Angular.Js提供了适用于各种项目的结构和概念,如控制器、服务和指令。jQuery本身可以用多种(无数)方式来做同样的事情。值得庆幸的是,在Angular.Js中,这种情况要少得多,这使得进入和退出项目变得更容易。它为多人为同一个项目做出贡献提供了一种明智的方式,而不必从头开始重新学习一个系统。


一个简短的比较可以是这样的-

jQuery

  • 可以很容易地使用那些谁有适当的CSS选择器知识
  • 它是一个用于DOM操作的库
  • 跟模特没有关系吗
  • 轻松操作网页内容
  • 应用样式使UI更有吸引力
  • 轻松的DOM遍历
  • 效果和动画
  • 简单的AJAX调用和
  • 实用程序的可用性
  • 不要有双向绑定功能
  • 当项目规模增加时,维护变得复杂和困难
  • 有时你必须写更多的代码来实现与Angular.Js中相同的功能

Angular.Js . js

  • 它是一个MVVM框架
  • 用于创建SPA(单页应用程序)
  • 它具有路由、指令、双向数据绑定、模型、依赖注入、单元测试等关键特性
  • 是模块化
  • 可维护的,当项目规模增加时
  • 双向数据绑定 其他友好 基于mvc模式李< / >
  • 深度链接
  • 模板
  • 内置表单验证
  • 依赖注入
  • 本地化
  • 完整测试环境
  • 服务器通信

还有更多

enter image description here

我想这有帮助。

可以找到更多 -