Latest web development tutorials
×

JavaScript kurs

JavaScript kurs JavaScript krótkie wprowadzenie JavaScript zwyczaj JavaScript eksport JavaScript gramatyka JavaScript oświadczenia JavaScript uwaga JavaScript zmienna JavaScript Typy danych JavaScript Przedmioty JavaScript funkcja JavaScript zakres JavaScript wydarzenie JavaScript sznur JavaScript operatorzy JavaScript porównać JavaScript If...Else JavaScript switch JavaScript for JavaScript while JavaScript Break & Continue JavaScript typeof JavaScript Typ konwersji JavaScript Wyrażenia regularne JavaScript błąd JavaScript Debugowanie JavaScript zmienny wyciąg JavaScript Tryb Strict JavaScript Zastosowanie niezgodne z przeznaczeniem JavaScript Uwierzytelnianie za pomocą formularzy JavaScript zarezerwowane słowa kluczowe JavaScript JSON JavaScript void JavaScript Kod Specyfikacja

JS funkcja

JavaScript definicja funkcji JavaScript Argumenty funkcji JavaScript wywołanie funkcji JavaScript zamknięcia

JS HTML DOM

DOM krótkie wprowadzenie DOM HTML DOM CSS DOM wydarzenie DOM EventListener DOM element

JS zaawansowane Tutorial

JavaScript Przedmioty JavaScript Number JavaScript String JavaScript Date JavaScript Array JavaScript Boolean JavaScript Math JavaScript RegExp Przedmioty

JS przeglądarka BOM

JavaScript Window JavaScript Window Screen JavaScript Window Location JavaScript Window History JavaScript Navigator JavaScript muzyka pop JavaScript Tymczasowy zdarzenia JavaScript Cookies

JS magazyn

JavaScript magazyn JavaScript test jQuery JavaScript test Prototype

JS Przykłady

JavaScript Przykłady JavaScript instancja obiektu JavaScript Przeglądarka Instancja obiektu JavaScript HTML DOM Przykłady JavaScript streszczenie

JS Reference Manual

JavaScript Przedmioty HTML DOM Przedmioty

Zamknięcia JavaScript

Zmienne JavaScript mogą być zmienne lokalne lub globalne.

zmienne prywatne mogą być stosowane zamknięcia.


Zmienne globalne

Funkcja może uzyskać dostęp do zmiennych zdefiniowanych przez funkcje wewnętrzne, takie jak ?:

Przykłady

Funkcja myFunction () {
var a = 4;
zwracają * a;
}

Spróbuj »

Funkcja ta może być również dostępny poza zmiennych funkcji zdefiniowane, takich jak:

Przykłady

var a = 4;
Funkcja myFunction () {
zwracają * a;
}

Spróbuj »

Przykładem z tyłu, a jest zmienną globalną.

Na stronie internetowej znajdują się na globalnej zmiennej obiektu window.

globalne zmienne mogą być stosowane we wszystkich skrypty na stronie.

W pierwszej kolejności, a jest zmienną lokalną.

Zmienne lokalne mogą być wykorzystywane jedynie w celu określenia jego funkcji wewnętrznej. Dla innych funkcji lub kodu skryptu nie jest dostępna.

Nawet globalne i lokalne zmienne o tej samej nazwie, są także dwie różne zmienne. Modyfikacja jednego, to nie będzie miało wpływu na wartość drugiego.

uwaga Jeśli nie zadeklarować zmienną za pomocą słowa kluczowego var, to zmienna globalna, mimo że jest zdefiniowana wewnątrz funkcji.


Zmienna cykl życia

Zakres zmiennych globalnych są globalne, czyli w całym programie JavaScript, zmienne globalne są wszędzie.

W zmiennej zadeklarowanej wewnątrz funkcji, działa tylko wewnątrz funkcji. Zmienne te są lokalne, zasięg lokalny; parametr funkcji jest zlokalizowana, tylko wewnątrz pracy funkcji.


Licznik Dilemma

Jeśli chcesz, aby wyobrazić sobie, w niektórych statystyk liczbowych i liczniki są dostępne we wszystkich funkcjach.

Można używać zmiennych globalnych, funkcja ustawia licznik jest zwiększany:

Przykłady

Licznik var = 0;

Funkcja add () {
Licznik + = 1;
}

add ();
add ();
add ();

// Licznik jest teraz 3

Spróbuj »

Zmiana licznika wystąpił w realizacji funkcji Dodaj ().

Ale pytanie jest, każdy skrypt na stronie można zmienić licznik, nawet jeśli nie ma połączeń, aby dodać funkcję ().

Jeśli oświadczam danej funkcji w liczniku, jeśli nie wywołać funkcję nie będą modyfikować wartość licznika:

Przykłady

Funkcja add () {
Licznik var = 0;
Licznik + = 1;
}

add ();
add ();
add ();

// Celem jest wyjście 3, ale nie, to wyjście jest jedno!

Spróbuj »

Powyższy kod nie wyjdzie poprawnie, za każdym razem kiedy zadzwonić, aby dodać funkcję (), licznik zostanie ustawiony na 1.

Funkcja inline JavaScript może rozwiązać ten problem.


JavaScript zagnieżdżone funkcje

Wszystkie funkcje mogą uzyskać dostęp do zmiennych globalnych.

W rzeczywistości, w JavaScript, wszystkie funkcje mogą uzyskać do nich dostęp na podłodze zakresie.

JavaScript obsługuje funkcje zagnieżdżone. Funkcja zagnieżdżona mogą uzyskać dostęp do zmiennych na warstwie funkcyjnej.

W tym przykładzie funkcja zagnieżdżona Plus () może uzyskać dostęp do zmiennej licznika function parent:

Przykłady

Funkcja add () {
Licznik var = 0;
Funkcja Plus () {licznik + = 1;}
PLUS ();
powrót licznika;
}

Spróbuj »

Jeśli mamy dostęp do funkcji poza plusa (), tak, że możemy zająć się losem ladzie.

Musimy również zapewnić, że licznik = 0 tylko raz.

Musimy zamknięcia.


Zamknięcia JavaScript

Pamiętaj wywołania funkcji sama zrobić? Funkcja ta zrobi?

Przykłady

var add = (function () {
Licznik var = 0;
Funkcja powrotu () {return licznik + = 1;}
}) ();

add ();
add ();
add ();

3 // Licznik

Spróbuj »

Przykłady analityczne

Dodaj zmienną słowo wskazuje, wartość zwracana funkcji nazywa siebie.

Funkcja własnym powołaniem jest wykonywana tylko raz. Ustawienie licznika do zera. I wrócić do wyrażenia funkcyjnego.

dodawania zmiennej w zależności od zastosowania. Wielkie jest to, że może on być dostępny od zakresu licznika warstwy funkcji.

To się nazywa zamknięcia JavaScript. Ma zmienną prywatną, tak że funkcja staje się możliwe.

Licznik, że zakres ochrony anonimowej funkcji mogą być modyfikowane tylko metodą dodawania.

uwaga Zamknięcia są dostępne na zakres jednofunkcyjny zmiennej wewnątrz funkcji, nawet jeśli funkcja warstwa została zamknięta.