W tym filmie mamy zamiar omówić koncepcję zwaną Zakres javascript.
Zakres odnosi się do kontekstu, że niektóre kod jest wykonywany.
Więc gdzie mamy jakiś kod powiedzmy to wewnątrz funkcji zwanej przywitać.
Ten kod działa w określonym kontekście.
A więc może to mieć jakieś zmienne i może mieć pewne właściwości i zakres odnosi się do niższej zmienne i właściwości są widoczne w tej funkcji.
A to może być różne wewnątrz innej funkcji lub jeśli mieliśmy funkcje zagnieżdżone wewnątrz siebie.
Który jest coś można zrobić.
Możemy mieć różne zakresy i inne zmienne są widoczne.
Więc to będzie sensu z kilkoma przykładami.
Jest to z pewnością bardzo trudne i skomplikowane temat ale mam zamiar spróbować mojej mocy, aby uprościć to za Ciebie.
Zacznijmy od czegoś prostego tutaj.
funkcji zadeklarować zrobić matematyki i wszystko, co zrobić matematyki zrobimy to zadeklarować zmienna x równa 40, a potem to się anulować tę dziennika X ..
Warto więc uruchomić zrobić matematyki i dostać 40 wydrukowane.
Więc wewnątrz tej funkcji w tym zakresie chcielibyśmy nazwać to x jest równa 40.
Jednak poza funkcją, gdy próbuję i dostęp X czego można spodziewać się zdarzyć.
I pojawia się błąd to mówi mi x nie jest zdefiniowana.
Więc co to pokazuje nam, że mamy dwa różne zakresy wewnątrz tej funkcji jest jeden kontekst.
X jest zdefiniowana w tutaj, ale poza tym i to, co nazwalibyśmy globalny zasięg nie jesteśmy wewnątrz dowolnej funkcji.
Po wpisaniu X pojawia się błąd, ponieważ nie wie, co X.
To nie jest widoczny w tym zakresie.
Więc jeśli robimy zdefiniować x dla x równa niech po prostu zadzwonić Ten niski.
Teraz, gdy mam dostępu X, kiedy jestem poza tą funkcją tylko w globalnym zasięgu, które otrzymuję.
Cześć.
Więc w tym kontekście X cześć.
Ale jeśli biegnę zrobić matematyki ponownie czego można spodziewać się tym razem.
Jest jeszcze 40 wewnątrz tym kontekście.
Więc to jest bardzo ważne.
Kiedy utworzyć funkcję ma własną przestrzeń własny zestaw zmiennych.
To nie znaczy jednak, że zamiast funkcji nie możemy uzyskać dostęp do zmiennych, które są zdefiniowane poza funkcją.
Więc pokażę wam przykład.
Zamierzam wyczyścić wszystko tutaj i tym razem użyjmy zmienna Y zmienna y jest równa dziewięćdziesiąt dziewięć.
Tak więc w zakresie globalnym mam dostępu y.
Teraz, jeśli Oświadczam funkcją Nazwijmy to zrobić więcej matematyki, jeśli chcę, aby anulować ten dziennik.
Dlaczego uważasz, że będzie miał błąd.
Albo to będzie działać dobrze.
Spróbujmy zrobić więcej matematyki z nawiasami.
I to daje mi 99.
Więc co to pokazuje nam o to, że kiedy określamy coś poza funkcją wciąż mamy do niego dostęp wewnątrz tej funkcji.
Potraktujcie to jako zakres dziecięcej.
To jest bardziej szczegółowy to wiercenie w dół do głębszym poziomie i podrzędnych zakresach mieć dostęp do rzeczy, aby znaleźć się w zakresie dominującej.
Więc jeśli ta analogia pomaga iść naprzód i biegać z nim.
Ale zasadniczo Podsumowując jeśli zdefiniujemy zmienną poza funkcją możemy go używać wewnątrz funkcji.
Ale przeciwnie, nie jest prawdą.
Więc oto inny przykład.
Co zrobić, jeśli w środku zrobić więcej matematyki I rzeczywiście zmienić wartość y.
Więc mówię, dlaczego jest równa 100.
A potem wydrukować y.
Co sądzisz dzieje się w tym przypadku.
To spróbować.
Więc spójrzmy na to, co y jest teraz.
To dziewięćdziesiąt dziewięć.
A jeśli mam więcej matematyki wypisze 100.
Zatem wewnątrz funkcji y jest na sto i wydrukować 100.
Ale co poza funkcją.
Co się stanie, jeśli po prostu wpisać Y.
Jest to również 100.
Więc co tu się stało to oświadczyłem y najpierw jako '99 poza funkcją w zakresie globalnym.
A potem wewnątrz funkcji zmieniłem y.
Więc to nie ogłoszono nową zmiennej Y w zakresie faktycznie okazało się, że stary, który został zadeklarowany się tutaj i to zmienił.
Więc tutaj.
Dlaczego sto poza Dlaczego jest również 100.
Więc oto jeszcze jeden przykład niech wyczyścić wszystko.
Zróbmy zmienna fraza równa wysokiej tam i wtedy zróbmy funkcją coś zrobić.
Wiem, że te nazwy nie są zbyt oszczędny i zamiast zrobić coś mam zamiar spróbować zmienić.
Zamierzam zrobić nową frazę VAR równa się pożegnać.
A potem w następnym wierszu Zamierzam go wydrukować.
Więc czego można spodziewać się zdarzyć tutaj.
Jeśli prowadzimy coś wydrukować widzenia.
Więc co to mówi nam, to zamiast zrobić coś dla A jest równa widzenia.
Ale poza tym, co jest równe zdanie to nadal istnieje wysokie.
Więc dodając daleko tutaj var fraza równa widzenia.
To sprawia, że ​​nowa zmienna zamiast używać jednej zdefiniowanej tutaj.
To sprawia, że ​​nową zmienną frazy istnieje tylko w tym zakresie jedynie wewnątrz zrobić coś sformułowane pożegnanie.