Какие пять концепций JavaScript мне нужно понять, чтобы быть хорошим разработчиком AngularJS?

Предположим, что я использую кодирование на стороне сервера (с серверными языками), и теперь я изучаю AngularJS. Это означает, что мне сначала нужно хорошее понимание JavaScript.

Если мне не нужно время полностью изучать JavaScript прямо сейчас, какие пять концепций JavaScript вы бы порекомендовали, я изучу сначала/хорошо, чтобы быть эффективным разработчиком AngularJS?

Ответ 1

  • система типов: есть два принципиально разных вида значений: примитивы и объекты. Число, строка, булево, null, undefined - все примитивы.
    Array ([1,2,3]), object ({ prop1: value1, prop2: value2 }), а функция - все объекты.
  • прототипное наследование – это особенно важно, когда вы пытаетесь привязать данные в AngularJS к примитивному
  • array ['syntax'] === array.syntax; array ['$ id'] === array. $id; массив [someExpression] не имеет эквивалентного ".". Обозначение
  • область переменных и присвоение
    • переменная, определенная где угодно внутри функции, видима везде внутри этой функции
    • когда переменной присваивается объект, ей присваивается ссылка (а не копия). Это становится важным в AngularJS, когда вы, например, извлекаете данные JSON с сервера и присваиваете результаты переменной. Это сбрасывает ссылку. Другие переменные (скажем, в вашем контроллере), указывающие на старую ссылку, продолжают указывать на старую ссылку. (пример)
  • закрытие – они очень полезны при определении услуг AngularJS (пример) и при определении методов на контроллере с использованием this (example)

Также обратите внимание, что JavaScript является однопоточным!

Ответ 2

На мой взгляд, вы должны получить ясность по следующим темам

1) вызов по значению vs вызов по ссылке в javascript

Причина: потому что в angularJS мы имеем дело с множеством объектов. Вы узнаете о своем поведении, как только вы это поймете.

2) Цепочка области действия и IIFE (непосредственное выражение функции invocable)

Причина. Когда вы работаете над приложением с использованием angularJS IIFE, играйте важную роль в манипулировании своей областью.

3) Закрытие

Причина: одна из самых важных концепций javascript. Если вы видите исходный код многих известных библиотек и фреймворков, построенных на javascript, они часто используют закрытие. Закрытие также поможет вам понять, как заводы работают в глубину.

4) Инъекция зависимостей

Причина: концепция javascript, на которой основана Angular JS

5) Вы также можете пройти несколько хороших руководств по стилю для AngularJS. Например, вы можете обратиться к этому: https://github.com/johnpapa/angular-styleguide