2013-03-13 5 views
10

Załóżmy, że jestem przyzwyczajony do kodowania po stronie serwera (z językami po stronie serwera), a teraz uczę się AngularJS. Oznacza to, że najpierw potrzebuję dobrego zrozumienia JavaScript.Jakie pięć koncepcji JavaScriptu muszę zrozumieć, aby być dobrym programistą AngularJS?

Jeśli nie potrzebuję czasu, aby w pełni nauczyć się JavaScript teraz, jakie pięć zaleceń JavaScript poleciłbym uczyć się najpierw/dobrze, aby być skutecznym programistą AngularJS?

+0

+1 W takim przypadku będę głosował również w górę, jeśli to pomoże w zamknięciu sprawy. – Stewie

+3

(Wydaje mi się, że AngularJS jest wystarczająco zdystansowany, że wymaga silnego zrozumienia JavaScriptu, aby był skuteczny i prawdziwie go opanować, i że cokolwiek mniej nie czyni tego sprawiedliwie, ale jeśli jesteś gotów zaakceptować pewne rzeczy jako nieco magiczne , wszystko jest dobrze. :)). Naprawdę nie ma zbyt wielu ruchomych części w JavaScript ... Sztuczka polega na tym, jak je wykorzystać i dobrze je połączyć. Przeczytałem/przejrzałem http://eloquentjavascript.net/index.html to. – WiredPrairie

Odpowiedz

9
  1. System typów: istnieją dwa zasadniczo różne rodzaje wartości: prymitywy i obiekty. Liczba, ciąg, boolean, null, undefined są wszystkie prymitywy.
    Array ([1,2,3]), obiekt ({ prop1: value1, prop2: value2 }), a funkcja to wszystkie obiekty.
  2. prototypal inheritance – jest to szczególnie ważne podczas próby databind w angularjs do prymitywnego
  3. tablicy [ ''] składni === array.syntax; array ['$ id'] === tablica. $ id; array [someExpression] nie ma eqiwalentnego "." Zapis
  4. zmiennym i przyporządkowanie
    • definiowana w dowolnym miejscu, w zależności widać wszędzie wewnątrz tej funkcji
    • kiedy zmienna przypisanego obiektu, jest przyporządkowany odniesienia (nie kopię). Staje się to ważne w AngularJS, gdy np. Pobierasz dane JSON z serwera i przypisujesz wyniki do zmiennej. Spowoduje to zresetowanie odniesienia. Inne zmienne (powiedzmy w kontrolerze), które wskazują na stare odniesienie, nadal wskazują na stary odnośnik. (example)
  5. zamknięcia – te są bardzo przydatne przy definiowaniu usług angularjs (example) oraz przy określaniu sposobów na kontrolerze używając this (example)

Należy również pamiętać, że JavaScript jest jednowątkowy!

+0

Dzięki @Stewie. Naprawdę mam nadzieję, że inni ludzie również będą pisać odpowiedzi, ale niestety są już 2 głosy, aby je zamknąć. –

+1

Świetna lista, dodałabym zrozumienie słowa kluczowego 'this' w kontekście języka JS. Wspomniano również o prototypowym dziedziczeniu, ale ważne są również ogólne pojęcia dotyczące tworzenia obiektu w JS i jego natury OO. – Chandermani

3

Moim zdaniem należy uzyskać jasność na następujące tematy

1) wezwanie wartości vs wywołania przez odniesienie w javascript

Powód: bo w angularjs mamy do czynienia z wieloma przedmiotami. Będziesz jasne o ich zachowanie po zrozumieniu tego

2) łańcuch Zakres i Iife (Natychmiast invocable wyrażenie funkcji)

Powód: Podczas pracy nad aplikacji przy użyciu angularjs IIFEs odgrywają ważną rolę w manipulowaniu twój zakres.

3) Zamknięcia

Powód: jedna z najważniejszych koncepcji javascript. Jeśli widzisz kod źródłowy wielu słynnych bibliotek i frameworków zbudowanych na javascriptie, często używają one zamknięć. Zamknięcia pomogą ci również zrozumieć, w jaki sposób fabryki działają dogłębnie.

4) Dependency Injection

Powód: javascript koncepcja, na której opiera się kątowa JS

5) Można też przejść przez kilka dobrych przewodników stylu dla angularjs. Na przykład możesz odwołać się do tego: https://github.com/johnpapa/angular-styleguide

Powiązane problemy