Angular js 和 javascript 之间的区别[关闭]

问题描述 投票:0回答:1

请回复

  • Angular js 的作用是什么?
  • javascript的作用是什么?
  • 当使用 angularjs 时
  • 当使用javascript时
  • 哪个厉害
javascript angularjs
1个回答
1
投票

Angular 和 jQuery 都是用 Javascript 编写的库/框架。让我比较 Angular 和 Javascript 就像要求比较面包和面粉一样。

但是,用于 DOM 操作的浏览器 API 的实现方式与 Angular 完全不同,因此我假设这就是您的作业期望您识别的内容。

需要关注的关键点是范式根本不同。 Angular 采用

声明式方法,而 DOM 和 jQuery 都是命令式

声明式

一种构建计算机程序结构和元素的风格,表达计算逻辑而不描述其控制流。 [

1]

声明性语言是一种描述你想要什么,而不是应该如何做的语言。这在很大程度上是 Angular 的指令方法。

势在必行

[一种风格],其中算法是按照显式步骤实现的。 [

1]

当我们使用 DOM API 或 jQuery 编写代码时,我们必须详细说明该过程的“方式”。

我们以数据绑定为例。我们想要将文本输入中的值绑定到标签中。

使用 DOM

<input type='text' id='bind-input'> <label id='bind-output'></label>

还有我们的Javascript:

window.addEventListener('load', function() { var input = document.getElement('bind-input'), output = document.getElement('bind-output'); input.addEventListener('change', function() { output.innerText = input.value; }); });

我们必须非常具体地解释我们需要浏览器做什么。我们必须监听某些事件,确保 DOM 已加载,跟踪元素的 ID,所有这些都是为了在输入发生变化时更新我们的标签。

使用 jQuery

<input type='text' id='bind-input'> <label id='bind-output'></label>

我们还需要一些Javascript:

$(document).ready(function() { var $input = $('#bind-input'), $output = $('#bind-output'); $input.on('change', function() { $output.html($input.value()); }); });

如您所见,这与 DOM 方法非常相似。我们必须向浏览器

准确地解释我们想要它做什么。

有角度

<input type='text' ng-model='bound'> <label ng-bind='bound'></label>

我们甚至不需要编写任何代码即可与 Angular 一起使用! (显然我们需要在某个地方有一个空控制器,但你明白了)。

声明式方法主要是我们从实现细节中抽象出来的一种方法。 Angular 指令使得将这些常见行为包装成小的可重用组件变得非常容易,然后可以以声明的方式应用于我们的 HTML。

© www.soinside.com 2019 - 2024. All rights reserved.