首页 文章

jQuery与AngularJS与Node.js之间的区别[关闭]

提问于
浏览
95

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

HTML - 网站CSS的布局 - 使它看起来很漂亮的JavaScript - 功能

那么jQueryAngularJSNode.js是什么?

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

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

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

6 回答

  • 7

    jQuery is a library (客户端)

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

    它使得HTML文档遍历和操作,事件处理,动画和Ajax之类的东西变得更加简单,易于使用的API适用于多种浏览器 .

    AngularJS is an MVC framework (客户端)

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

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

    Node.js is a platform and runtime environment (服务器端)

    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模型,使其轻量级和高效,非常适合在分布式设备上运行的数据密集型实时应用程序 .

    Library vs. Framework

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

    Enter image description here

    Library

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

    Framework

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

  • 26

    简单来说,

    • jQuery - 是一组用于操作HTML和CSS的JavaScript函数

    • AngularJS - 是一个JavaScript框架,可以帮助您组织HTML和CSS

    • Node.js-是一个JavaScript运行时...有点像服务器或本地机器上的浏览器,但没有所有的浏览器渲染引擎和附加功能......它只是一个运行时

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

  • 186

    jQuery

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

    AngularJS

    AngularJS是一个用于为交互式网站和Web应用程序构建 front-end, graphical user interfaces (GUIs) 的框架 . 当与Node.js一起使用时,它可以提供强大的组合

    Node.js

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

    Frameworks in general

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

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

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

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

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

    请查看here以获取更多信息 .

  • 6

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

    jQuery

    • Jquery代码相对较短 . 有时只有五行jQuery代码相当于25行常规JavaScript代码(例如使用AJAX加载数据文件) . 这意味着更少的代码和更小的文件 .

    • 大型库:与其他JavaScript库相比,jQuery使您能够执行大量功能 .

    • Super Easy使用Ajax:jQuery使您可以轻松地开发Ajax模板,Ajax实现了更流畅的界面,可以在页面上执行操作,而无需重新加载整个页面 .

    AngularJS

    • 双向数据绑定:虽然您可以在jQuery中编写一个简单的双向数据绑定事件,但JavaScript MVC库提供了一种更加声明性(使用HTML)的方式将模型连接到您的视图 .

    • 伟大的SPA(single-page applications):像AngularJS,Aurelia,Ember.jsMeteor这样的库提供了所有的管道,而不是在jQuery中编写所有的管道

    Node.js

    • 速度很快:除了快速执行JavaScript之外,Node.js背后的真正魔力就是事件循环 . 事件循环是一个单独的线程,它以异步方式执行所有I / O操作 . 传统上,I / O操作通过产生并行线程来执行工作,同步(阻塞)或异步运行 .

    • 实时轻松:如果Node.js在许多并发连接方面表现优异,那么它在多用户,实时Web应用程序(如聊天和游戏)方面表现优异是有道理的 . Node.js的事件循环负责多用户需求 .

  • 7

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

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

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

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

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

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

相关问题