JavaScript Fonksiyon Apply
- Önceki Sayfa JS Fonksiyon Call
- Sonraki Sayfa JS Fonksiyon Bağlama
yöntem tekrar kullanımı
Yöntem aracılığıyla apply()
Yöntem, farklı nesneler için kullanılmak üzere yazılabilecek yöntemler oluşturmanıza olanak tanır.
JavaScript apply() yöntemi
apply()
Yöntem, call()
Yöntemler çok benzerdir:
Bu örnekte,person
ın fullName
Yöntem,uygulamaden person1
:
Örnek
var person = { fullName: function() { return this.firstName + " " + this.lastName; } } var person1 = { firstName: "Bill", lastName: "Gates", } person.fullName.apply(person1); // "Bill Gates" döndürecektir
call() ve apply() arasındaki fark
Farklılık budur:
call()
Yöntem, parametreleri ayrı ayrı kabul eder.
apply()
Yöntem, dizilik parametreleri kabul eder.
Dizi yerine parametre listesi kullanmak isteniyorsa, apply()
Çok kolay bir yöntemdir.
Parametreli apply() yöntemi
apply()
Yöntem, dizideki parametreleri kabul eder:
Örnek
var person = { fullName: function(city, country) { return this.firstName + " " + this.lastName + "," + city + "," + country; } } var person1 = { firstName:\"Bill\", lastName: "Gates" } person.fullName.apply(person1, ["Oslo", "Norway"]);
ile call()
Yöntem Karşılaştırması:
Örnek
var person = { fullName: function(city, country) { return this.firstName + " " + this.lastName + "," + city + "," + country; } } var person1 = { firstName:\"Bill\", lastName: "Gates" } person.fullName.call(person1, "Oslo", "Norway");
Diziler üzerinde max yöntemini simüle etmek için
Kullanabilirsiniz Math.max()
Yöntemi (sayı dizisindeki) en büyük sayı bulmak için kullanabilirsiniz:
Örnek
Math.max(1,2,3); // 3 döner
JavaScript dizileri max() yöntemine sahip olmadığı için, Math.max()
Yöntem.
Örnek
Math.max.apply(null, [1,2,3]); // 3 de döner
İlk parametre (null) önemlidir değil. Bu örnekte kullanılmamıştır.
Bu örnekler aynı sonucu verecektir:
Örnek
Math.max.apply(Math, [1,2,3]); // 3 de döner
Örnek
Math.max.apply(" ", [1,2,3]); // 3 de döner
Örnek
Math.max.apply(0, [1,2,3]); // 3 de döner
JavaScript Sıkı Modu
JavaScript sıkı modunda, eğer apply()
Yöntemin ilk parametresi nesne değilse, o yöntem tüm çağrılan fonksiyonun sahibi (nesnesi) olacaktır. 'Sıkı' modunda, bu genel nesne olur.
- Önceki Sayfa JS Fonksiyon Call
- Sonraki Sayfa JS Fonksiyon Bağlama