Witamy z powrotem w poprzednim filmie dowiadujemy się, że gdy nie jest to słowo kluczowe wewnątrz zadeklarowanej obiektu jego wartość jest obiektem globalnym.
Niech szybko wykazać, co mam na myśli deklarowanej obiektu w przypadku poprzedniego filmu pozostało ci trochę zdezorientowany.
Pamiętaj materiał tutaj jest dość trudne.
Więc spróbuj oglądając te filmy kilka razy i wpisując przykłady kodu w celu wzmocnienia swojej wiedzy.
Zamierzam dokonać pusty obiekt o nazwie danych.
Co mam zrobić po prostu jest zadeklarowany obiekt obiekt danych nie istnieje, dopóki nie został zadeklarowany.
Teraz mam zamiar dołączyć właściwość na ten obiekt nazywa instruktora i ustaw wartość równą LTE.
Teraz nasze dane obiekty, które zadeklarowaliśmy ma klucz z wartością elhi wewnątrz niego.
To jest to, co mamy na myśli, gdy mówimy, wewnątrz deklarowanej obiektu.
Jeśli to wciąż myli, że wszystko jest w porządku.
To sprawi, że nawet więcej sensu, gdy przyjrzymy się drugą regułę i zobaczyć słowa kluczowego to wnętrze obiektu.
Teraz skończyć z pierwszą regułą.
Jak widać tutaj, kiedy kładziemy kluczowe słowo to wewnątrz funkcji jego wartość nadal jest obiektem globalnym.
Pamiętaj, że reguła globalna dotyczy, chyba że jest to słowo kluczowe wewnątrz zadeklarowanej obiektu ale wewnątrz funkcji już teraz.
Kiedy więc wywołać funkcję co to jest wartość zwracana jest przedmiotem okno.
Teraz spójrzmy na jednym ostatnim przykładzie.
Co się stanie, jeśli przywiązujemy do kluczowych właściwości tego gdy jej wartość jest obiektem globalnym.
I pamiętaj, kiedy mówię globalnego obiektu Znaczy obiekt okna w różnych środowiskach języka JavaScript.
Wartość ta będzie się zmieniać.
Ale ponieważ jesteśmy w przeglądarce globalny obiekt jest obiektem okno.
Teraz rzućmy okiem na naszych zmiennych w tej funkcji w zmiennych w tej funkcji.
Jesteśmy przyłączenie nieruchomości na kluczowych ta nazywana osoba i ustawienie go równa Ellie.
Ponieważ słowo kluczowe odnosi się do globalnego obiektu cokolwiek możemy zamocować na nim staje się globalną zmienną, która oznacza, że ​​możemy używać go poza funkcją.
Może to wydawać się może coś chcemy zrobić, ale w rzeczywistości jest to bardzo zła praktyka.
Niech szybko ponownie, jak zmienne i zakres pracy w javascript.
Mam zamiar zadeklarować zmienną o nazwie psa i powiedział wartość równą Rusty.
Ja wtedy zamiar zrobić to funkcja o nazwie cisi osoba z wewnątrz zadeklarować zmienną o nazwie osoba korzystająca słowa kluczowego var i powiedział, że równa kodu.
Odkąd oświadczył tej zmiennej wewnątrz funkcji, a ja nie wracam to jest wartość nie mam do niego dostęp poza funkcją.
Jednak odkąd ogłosił mój pies zmienną w zakresie globalnym mam do niego dostęp wszędzie.
Teraz możemy obejść problem nie jest w stanie wejść na naszą zmienną osobą przez pominięcie słowa kluczowego var wewnątrz naszej funkcji.
Jednak jest to bardzo zła praktyka.
Jest to generalnie najlepsze praktyki do deklarowania wszystkich naszych zmiennych, które chcemy wykorzystać w wielu funkcjach w górnej części naszego kodu, nawet jeśli nie mają one wartości, a następnie przypisać te wartości w późniejszym czasie w funkcji.
Niestety, ponieważ słowo kluczowe jest to globalny obiekt jest dość łatwe do przypadkowego zadeklarować zmienne globalne wewnątrz funkcji.
Zobaczmy przykład.
Idę do funkcji o nazwie błąd wewnętrzna ustawić właściwość na kluczowych ten nazywany złym pomysłem jest równy ciąg.
Ups.
Teraz mam zamiar wywołać tą funkcję i możemy zobaczyć, że mam dostęp do moich złych zmiennej pomysł.
Przypadkowo prostu się zmienną globalną.
Na szczęście w tak 5 poprzednia wersja JavaScript czymś zwanym trybie strict dodano nam pomóc.
Javascript programiści czytaj lepiej radzić sobie, gdy włączony jest tryb surowe.
Które można zrobić dodając use strict w cudzysłów.
Wartość tego hasła, kiedy wewnątrz funkcji jest niezdefiniowany.
To nie jest obiektem globalnym.
Oznacza to, że jeśli staramy się dołączyć właściwości na niego otrzymujemy typu błędu.
Ponieważ nie możemy dołączyć do niezdefiniowanej właściwości może widzieliście tego błędu całkiem sporo.
Zatrzymuje nas przypadkowe stworzenie zmiennych globalnych i pozwala na wykorzystanie javascript najlepszych praktyk.
W tym filmie mamy przeglądowi pierwszą zasadę określania tego słowa kluczowego i zobaczyłem jak możemy przypadkowo tworzyć zmienne globalne wewnątrz funkcji.
Widzieliśmy również w jaki sposób ścisły może powstrzymać nas od podejmowania tego błędu w następnym filmie.