jQuery与AngularJS与Node.js之间的区别

K S*_*t X 105 html javascript jquery node.js angularjs

我刚刚开始进行Web开发,到目前为止我知道:

HTML - 网站布局

CSS - 让它看起来很漂亮

JavaScript - 功能

那么什么是jQuery,AngularJSNode.js

在快速搜索之后,我发现jQuery是一个"JavaScript库",AngularJS是"基于JavaScript的开源前端Web应用程序框架",而Node.js是"JavaScript运行时环境".

它们似乎都与JavaScript有关,它们是新语言吗?'框架/库'是什么意思?

一个简单的答案将不胜感激.(我刚刚开始编程,但我熟悉编程).

Aru*_*una 203

jQuery是一个库(客户端)

jQuery是一个快速,小巧,轻量级的"少写,多做",以及功能丰富的JavaScript库.

它通过易于使用的API在大量浏览器中运行,使得HTML文档遍历和操作,事件处理,动画和Ajax变得更加简单.

AngularJS是一个MVC框架(客户端)

AngularJS是一个客户端JavaScript MVC框架,用于开发动态Web应用程序.

它允许您使用HTML作为模板语言,并允许您扩展HTML的语法,以清晰简洁地表达您的应用程序的组件.AngularJS的数据绑定和依赖注入消除了您必须编写的大部分代码.这一切都发生在浏览器中,使其成为任何服务器技术的理想合作伙伴.AngularJS最初是作为Google的一个项目启动的,但现在它是一个开源框架.

Node.js是一个平台和运行时环境(服务器端)

Node.js是一个开源的跨平台运行时环境,用于开发基于Google Chrome的JavaScript引擎(V8引擎)构建的服务器端和网络应用程序.Node.js应用程序是用JavaScript编写的,可以在OS X,Microsoft Windows和Linux上的Node.js运行时中运行.

Node.js还提供了各种JavaScript模块的丰富库,它在很大程度上简化了使用Node.js的Web应用程序的开发.Node.js使用事件驱动的非阻塞I/O模型,使其轻量级和高效,非常适合在分布式设备上运行的数据密集型实时应用程序.

图书馆与框架

库和框架之间的关键区别是"控制反转".当您从库中调用方法时,您就可以控制它.但是使用框架,控件被反转:框架会调用你.

在此输入图像描述

图书馆

编写Web应用程序时有用的函数集合.您的代码负责,并在它认为合适时调用库.例如,jQuery.

骨架

Web应用程序的特定实现,其中您的代码填写详细信息.该框架负责,当需要特定于应用程序的东西时,它会调用您的代码.例如,AngularJS,Durandal,Ember.js等.

  • 这是一个非常好的答案.帮了我很多忙!谢谢 (2认同)
  • 这是迄今为止最好的答案,并且很好地解释了 (2认同)

Dmi*_*eev 27

简单来说,

  • jQuery - 是一组用于操作HTML和CSS的JavaScript函数
  • AngularJS - 一个JavaScript框架,可以帮助您组织HTML和CSS
  • Node.js-是一个JavaScript运行时...有点像服务器或本地机器上的浏览器,但没有所有浏览器呈现引擎和附加功能..它只是一个运行时

库与框架的主要区别在于简单的单词:
框架强加某种架构并期望应用程序遵循其期望
是低级构建块的集合,通常提供旨在解决特定问题的粒度函数(即jquery.post()功能)*


Tim*_*Tim 17

jQuery的

jQuery是一个为你做很多事情的库.它包含许多方便,常用的功能,因此您不必自己编写此代码.这是在石器时代成为木匠,或拥有一系列电动工具之间的区别.

AngularJS

AngularJS是一个用于为交互式网站和Web应用程序构建前端图形用户界面(GUI)的框架.当与Node.js一起使用时,它可以提供强大的组合

Node.js的

Node是一个用于构建后端Web服务的框架,例如在后台为您提取数据的API REST端点.您可以使用AngularJS将按钮和GUI元素连接到这些端点,以构建丰富的,数据驱动的Web应用程序和Web报告.作为RESTful,这些服务等待,直到前端向他们发送请求(用户单击按钮)并执行数据库查询或读取文件并吐出一些数据,然后Web应用程序可以显示给用户.

框架一般

早期木匠类比中的框架就像是与专业建筑师团队签约,为您完成工作.您足够详细地描述了这项工作,他们接管并实际完成工作.因此,您的任务将减少为以正确的语言提出工作规范,供构建者团队理解,而不是自己完成工作.

AngularJS就像室内设计团队和电气一样,Node.js就是其他一切.过于简单?也许.但是你要求一个简单的解释.

因此,您可以将AngularJS和Node.js视为对立面,但它们可以在同一个应用程序或项目中一起使用.它们用于不同的目的,但它们都使用JavaScript(和jQuery在某种程度上)来完成它.


Yas*_*ser 7

  • 框架:它描述了如何呈现代码的给定结构.非常像代码模板,一些帮助器,构造器等,以解决/简化特定问题或使您的架构"按顺序".示例,Backbone.js,RequireJS,Socket.IO.框架封装了常见的应用程序功能,允许开发人员专注于应用程序独有的部分.

  • :是一个完整的工具包,可以高度抽象不同的层,如浏览器,DOM模型等.作为一个很好的工具包,它提供了许多工具和简洁的工作,通常可以简化您的编码体验.例如jQuery和MooTools.

这里了解更多信息.


ab2*_*007 7

这就是他们日复一日受欢迎的原因:

jQuery的

  • Jquery代码相对较短.有时只有五行jQuery代码相当于25行常规JavaScript代码(例如使用AJAX加载数据文件).这意味着更少的代码和更小的文件.
  • 大型库:与其他JavaScript库相比,jQuery使您能够执行大量功能.
  • 超级轻松使用Ajax:jQuery使您可以轻松地开发Ajax模板,Ajax可以实现更流畅的界面,可以在页面上执行操作,而无需重新加载整个页面.

AngularJS

  • 双向数据绑定:虽然您可以在jQuery中编写一个简单的双向数据绑定事件,但JavaScript MVC库提供了一种更加声明性(使用HTML)的方式将模型连接到您的视图.
  • 非常适合SPA(单页面应用程序):像AngularJS,Aurelia,Ember.jsMeteor这样的库为您提供所有的管道,而不是在jQuery中编写所有的管道

Node.js的

  • 速度很快:除了快速执行JavaScript之外,Node.js背后的真正魔力就是事件循环.事件循环是一个单独的线程,它以异步方式执行所有I/O操作.传统上,I/O操作通过产生并行线程来执行工作,同步(阻塞)或异步运行.
  • 实时轻松:如果Node.js在许多并发连接方面表现优异,那么它在多用户,实时Web应用程序(如聊天和游戏)方面表现优异是有道理的.Node.js的事件循环负责多用户需求.

  • *"5行jQuery代码相当于25行常规JavaScript代码"* - 取决于你想要做什么.对于某些任务而言,差异很小,而对于其他任务则存在很大差异.*"这意味着更小的文件和更快的加载网页."* - 除了jQuery保存您自己编写的代码全部包含在jQuery文件中,该文件也必须下载到浏览器中.所以代码的总量可能更多. (2认同)

the*_*kim 6

您可以使用HTML,CSS和JavaScript来创建交互式网站.

jQuery是一个用JavaScript编写的工具.

AngularJS是一个用JavaScript编写的工具.

React是一个用JavaScript编写的工具.

这些工具可帮助您根据自己的规则管理HTML,CSS和JavaScript之间的交互.一旦工具变得非常大,它可能会采用"库"或"框架"之类的名称,具体取决于其特征.

我们经常在Web浏览器中运行JavaScript.但是几年前,这个名为Node.js的东西让我们可以在浏览器之外轻松运行JavaScript.我喜欢将其视为"在浏览器之外运行JavaScript的程序"(这意味着......没有HTML或CSS可供查看).