Wywołanie funkcji JavaScript

Istnieją cztery rodzaje funkcji JavaScript jest tzw.

Każdy różnych sposobów, że ten inicjalizacji trybu.


to słowo kluczowe

Ogólnie rzecz biorąc, w JavaScripcie, to odnosi się do obecnych funkcji realizowanych obiektów.

uwaga Zauważ, że to jest zarezerwowanym słów kluczowych, nie można zmienić tej wartości.

Wywołanie funkcji JavaScript

W poprzednim rozdziale dowiedzieliśmy się, jak utworzyć funkcję.

Kod funkcji jest wykonywany po wywołaniu funkcji.


W wywołaniu funkcji

Przykłady

Funkcja myFunction (a, b) {
powrót a * b;
}
myFunction (10, 2); // myFunction (10, 2) 20 powraca

Spróbuj »

Powyższa funkcja nie należy do żadnego obiektu. Jednak w JavaScript, zawsze jest domyślnym obiektem globalnym.

W HTML, domyślnie globalnym celem jest strona HTML sama, więc funkcja ta jest częścią strony HTML.

W oknie przeglądarki obiektu przeglądanej strony (obiekty okna). Przez funkcję automatycznie staje funkcję obiektu window.

myFunction () i window.myFunction () jest taka sama:

Przykłady

Funkcja myFunction (a, b) {
powrót a * b;
}
window.myFunction (10, 2); // window.myFunction (10, 2) 20 powraca

Spróbuj »

uwaga Jest to powszechnie stosowana metoda wywołuje funkcję JavaScript, ale nie jest to dobra praktyka programowania globalne zmienne, metody i funkcje, które mogą powodować konfliktów nazw błąd.

obiektów globalnych

Gdy funkcja wywołuje sama nie jest obiektem ?, Wartość ta stanie się obiektem globalnym.

W przeglądarce internetowej, w oknie przeglądarki jest globalny obiekt (obiekty okna).

Przykłady to wartość zwracana jest przedmiotem okno:

Przykłady

Funkcja myFunction () {
wrócić w tym;
}
myFunction (); // Zwraca obiekt okna

Spróbuj »

uwaga Funkcja jako globalnego obiektu zadzwonić, będzie to wartość globalnego obiektu.
Użyj okna obiekt jako zmienna może spowodować awarię programu.

W zależności od sposobu połączenia

W JavaScript można użyć funkcji zdefiniowanej jako metoda obiektu.

Poniższy przykład tworzy obiekt (myObject), obiekt posiada dwie właściwości (imię i nazwisko) oraz metodę (pełna):

Przykłady

var myObject = {
Imię: "John",
lastName: "Kowalski",
fullname: function () {
powrót this.firstName + "" + this.lastName;
}
}
myObject.fullName (); // zwraca "John Doe"

Spróbuj »

Metoda fullname jest funkcją. Funkcja należą do przedmiotu. myObject jest właścicielem funkcji.

Ten obiekt ma kodu JavaScript. Wartość obiektów MyObject wystąpienie tego.

Następujący test! FullName modyfikacji tej metody i powrotu wartości:

Przykłady

var myObject = {
Imię: "John",
lastName: "Kowalski",
fullname: function () {
wrócić w tym;
}
}
myObject.fullName (); // zwraca [object Object] (właściciel obiektu)

Spróbuj »

uwaga Funkcja jako obiekt wywołania metody, więc będzie to wartość samego obiektu.

Za pomocą wywołania funkcji konstruktora

Jeśli funkcja zostanie wywołana przed użyciem słowa kluczowego new, konstruktor nazywa.

Wygląda na to, aby utworzyć nową funkcję, ale w rzeczywistości funkcje JavaScript są obiektami utworzony ponownie:

Przykłady

// Konstruktor:
Funkcja myFunction (arg1, arg2) {
this.firstName = arg1;
this.lastName = arg2;
}

// Tworzy nowy obiekt
var x = new myFunction ( "Jan", "Kowalski");
x.firstName; // zwraca "John"

Spróbuj »

Zadzwoń do konstruktora, aby utworzyć nowy obiekt. Nowy obiekt dziedziczy właściwości i metody konstruktora.

uwaga Konstruktor to słowo kluczowe nie mają żadnej wartości.
ta wartość, aby utworzyć wystąpienie obiektu (nowy obiekt) w wywołaniu funkcji.

W zależności od funkcji połączenia Metoda

W JavaScript, funkcje są obiektami. Funkcja JavaScript ma swoje atrybuty i metody.

call () i apply () funkcja jest określoną metodą. Obie metody mogą być stosowane do wywołania funkcji, pierwszy argument dwie metody musi być taki sam obiekt.

Przykłady

Funkcja myFunction (a, b) {
powrót a * b;
}
myFunction.call (myObject, 10, 2); // zwraca 20

Przykłady

Funkcja myFunction (a, b) {
powrót a * b;
}
myArray = [10,2];
myFunction.apply (myObject, myArray); // zwraca 20

Obie metody wykorzystują ten sam obiekt jako pierwszy parametr. Różnica polega na tym, że drugi argument: stosować przekazywane jest tablicą parametrów, to jest wiele parametrów połączonych do tablicy minął, a następnie zadzwonić jako parametr wywołania przejściu (od początku drugiego argumentu).

W trybie ścisłym JavaScript (tryb ścisłe), wywołanie funkcji w pierwszym argumentem będzie ta wartość, nawet jeśli parametr nie jest obiektem.

W trybie ścisłym non-JavaScript (w trybie non-ścisłe), jeżeli wartość pierwszego parametru jest null lub undefined, będzie korzystał z obiektu globalnego zamiast.

uwaga W ten sposób można ustawić wartość przez call () i apply () i wywołanie jako nowej metody obiektu, który już istnieje.