要成为一名优秀的AngularJS开发人员,我需要了解哪五个JavaScript概念?

What five JavaScript concepts do I need to understand to be a good AngularJS developer?

本文关键字:了解 JavaScript 五个 概念 开发 一名 AngularJS      更新时间:2023-09-26

假设我习惯于在服务器端编码(使用服务器端语言),现在我正在学习AngularJS。这意味着我首先需要很好地理解JavaScript。

如果我现在没有时间完全学习JavaScript,为了成为一名有效的AngularJS开发人员,你会建议我先学习哪五个JavaScript概念?

  1. 类型系统:有两种基本不同的值:原语和对象。数字、字符串、布尔值、nullundefined都是原语。
    Array ([1,2,3])、object ({ prop1: value1, prop2: value2 })、function均为对象
  2. 原型继承当你试图在AngularJS中绑定到一个原语
  3. 时,这一点尤其重要。
  4. array['syntax'] === array.syntax;Array ['$id'] === Array .$id;array[someExpression]没有对应的"."表示法
  5. 变量范围和赋值
    • 在函数内任何地方定义的变量都是可见的在函数内任何地方
    • 当一个变量被分配给一个对象时,它被分配一个引用(不是副本)。这在AngularJS中变得很重要,例如,当你从服务器获取JSON数据并将结果赋值给变量时。这将重置引用。指向旧引用的其他变量(比如在控制器中)继续指向旧引用。(例子)
  6. 关闭mdash;这些在定义AngularJS服务(示例)和使用this(示例)在控制器上定义方法时非常有用

还要注意JavaScript是单线程的!

在我看来,你应该弄清楚以下主题

1) 按值调用和按引用调用

原因:因为在angularJS中我们要处理很多对象。一旦你明白了这一点,你就会清楚他们的行为

2) 作用域链和IIFE(立即可调用的函数表达式)

原因:当你使用angularJS开发应用程序时,生命在控制你的作用域方面起着重要作用。

闭包

理由:最重要的javascript概念之一。如果你看过很多基于javascript的著名库和框架的源代码,你会发现它们大量使用了闭包。闭包还可以帮助你深入了解工厂是如何工作的。

4) 依赖注入

原因:Angular JS基于的一个javascript概念

5)你也可以通过一些好的AngularJS风格指南。例如,您可以参考这个:https://github.com/johnpapa/angular-styleguide