En son web geliştirme öğreticiler
 

JavaScript Fonksiyon Tanımları


JavaScript fonksiyonlarını ile tanımlanır function anahtar kelime.

Bir işlev bildirimi veya işlev ifadesini kullanabilirsiniz.


Fonksiyon Bildirimleri

Daha önce bu eğitimde, sen işlevleri aşağıdaki yazım ilan öğrendik:

function functionName ( parameters ) {
  code to be executed
}

Beyan fonksiyonlar hemen yürütülmez. Onlar edilir "saved for later use" ve onlar çağrıldığında sonra çalıştırılacaktır (called upon) .

Örnek

function myFunction(a, b) {
    return a * b;
}
Kendin dene "

Noktalı virgül yürütülebilir JavaScript ifadeleri ayırmak için kullanılır.
Bir işlev bildirimi yürütülebilir bir deyim olmadığı için, bir noktalı virgül ile ayrılık yaygın değildir.


İşlev ifadeleri

Bir JavaScript işlevi de ifade kullanılarak tanımlanabilir.

Bir fonksiyon ifade, bir değişken saklanabilir:

Örnek

var x = function (a, b) {return a * b};
Kendin dene "

bir işlevi, ifade bir değişkende kaydedildikten sonra, değişken bir fonksiyonu olarak kullanılabilir:

Örnek

var x = function (a, b) {return a * b};
var z = x(4, 3);
Kendin dene "

Yukarıdaki işlev aslında anonim bir fonksiyon (isimsiz bir işlev) 'dir.

değişkenlerde saklanan Fonksiyonlar işlev adlarını gerekmez. Onlar her zaman çağrılır (called) değişken adını kullanarak.

o yürütülebilir bir ifadenin bir parçası olduğu için fonksiyon yukarıdaki noktalı virgül ile biter.


Function() Yapıcı

Önceki örneklerde gördüğümüz gibi, JavaScript fonksiyonları ile tanımlanır function anahtar kelime.

Fonksiyonlar da bir JavaScript yerleşik fonksiyon yapıcısı olarak adlandırılan ile tanımlanabilir Function() .

Örnek

var myFunction = new Function("a", "b", "return a * b");

var x = myFunction(4, 3);
Kendin dene "

Aslında fonksiyon kurucusunu kullanmak gerekmez. Yukarıdaki örnekte, yazı olarak aynıdır:

Örnek

var myFunction = function (a, b) {return a * b};

var x = myFunction(4, 3);
Kendin dene "

Çoğu zaman, kullandığınız önleyebilirsiniz new JavaScript anahtar kelime.


Function Hoisting

Daha önce bu eğitimde, sen öğrendik "hoisting" .

Kaldırma geçerli kapsamı üstüne beyanlarını hareketli JavaScript'in varsayılan davranıştır.

Kaldırma değişken beyanlarına ve işlev bildirimleri için geçerlidir.

beyan önce bu nedenle, JavaScript fonksiyonları çağrılabilir:

myFunction(5) ;

function myFunction(y) {
    return y * y;
}

Bir ifade kullanılarak tanımlanır Fonksiyonlar çekilir değildir.


Kendinden çağırma Fonksiyonlar

İşlev ifadeleri yapılabilir "self-invoking" .

Kendinden yürütmesini ifade çağrılır (started) denilen edilmeden, otomatik.

Ifadesi izlerse İşlev ifadeleri otomatik olarak çalıştırır () .

Bir işlevi bildirimi kendini çağırmak olamaz.

Bunu bir işlev ifadesi olduğunu belirtmek için fonksiyon etrafında parantez eklemek zorunda:

Örnek

(function () {
    var x = "Hello!!";      // I will invoke myself
})();
Kendin dene "

Yukarıdaki işlev aslında isimsiz kendinden yürütmesini fonksiyonu (isimsiz fonksiyon) 'dir.


Fonksiyonlar Değerler olarak el Olabilir

JavaScript işlevleri değerler olarak kullanılabilir:

Örnek

function myFunction(a, b) {
    return a * b;
}

var x = myFunction(4, 3);
Kendin dene "

JavaScript işlevleri ifadelerde kullanılabilir:

Örnek

function myFunction(a, b) {
    return a * b;
}

var x = myFunction(4, 3) * 2;
Kendin dene "

Fonksiyonlar Nesneler vardır

typeof JavaScript operatör döner "function" fonksiyonları için.

Ama, JavaScript fonksiyonları iyi nesneler olarak tanımlanabilir.

JavaScript fonksiyonları özellikleri ve yöntemleri de var.

arguments.length özelliği fonksiyonu çağrıldığında parametre sayısı alınan verir:

Örnek

function myFunction(a, b) {
    return arguments.length;
}
Kendin dene "

toString() yöntemi, bir dizi olarak işlev verir:

Örnek

function myFunction(a, b) {
    return a * b;
}

var txt = myFunction.toString();
Kendin dene "

Bir nesnenin özelliği olarak tanımlanan bir fonksiyon, bir nesneye bir yöntemi olarak adlandırılır.
Yeni nesneler oluşturmak için tasarlanmış bir fonksiyon, bir amacı yapıcı olarak adlandırılır.