kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Cannn6161 1
Cannn6161
onur akbaş 1
onur akbaş
PrimeAC 1
PrimeAC
Mt2Hizmet 1
Mt2Hizmet
romegames 1
romegames
Fethi Polat 1
Fethi Polat
xranzei 1
xranzei
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

JavaScript'te Call, Apply ve Bind Nasıl Kullanılır?

Replicant

Ehlî olmuşum elemlerin
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye
TM Üye
Katılım
7 May 2010
Konular
10,579
Mesajlar
58,614
Çözüm
219
Online süresi
10mo 29d
Reaksiyon Skoru
16,721
Altın Konu
444
TM Yaşı
16 Yıl 1 Ay 5 Gün
Başarım Puanı
691
MmoLira
19,925
DevLira
601
Ticaret - 100%
2   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

laptop-coffee-mug-and-javascript.jpg

JavaScript pratiği yaparken diziler ve dizeler için olanlar gibi çeşitli yerleşik işlevlerle karşılaşmış olabilirsiniz. Bu daha yaygın yöntemleri günlük programlama görevlerinizde kullanabilirsiniz, ancak diğer yöntemler özel amaçlar için kullanılabilir.

JavaScript'in call() , application() ve bind() yöntemleri, özel kullanım durumları olan ve genellikle kodlama görüşmelerinde JavaScript bilginizi test etmek için kullanılan bu tür yöntemlerden bazılarıdır. Bunları nasıl kullanabileceğinize daha yakından bakalım.

1. call()

call() , bir nesneye ait bir işlev veya yöntemin atanmasına ve farklı bir nesne için çağrılmasına izin verir. this anahtar sözcüğünü kullanarak nesnenin değerlerine başvurabilirsiniz .

Bu call() örneğine bakın.

Kod:
let obj = {
 name:"John",
 surname:"Doe",
 getFullName: function(){
 console.log(this.name+" "+this.surname);
 }
}
obj.getFullName();

Obj nesnesi, kişinin tam adını yazdıran getFullName() adlı bir işleve sahiptir . Şimdi, getFullName() 'i farklı değerlere sahip farklı bir nesneyle kullanmak istiyorsanız, call() işlevini kullanarak bunu yapabilirsiniz.

Kod:
const obj2 = {
 name:"Jane",
 surname:"Doe"
 }
obj.getFullName.call(obj2);

Ayrıca , nesneyle birlikte call() işlevine farklı argümanlar da iletebilirsiniz.

Kod:
let obj = {
 name:"John",
 surname:"Doe",
 getFullName: function(age, gender){
 console.log(this.name+" "+this.surname+" "+age+" "+gender);
}
obj.getFullName.call(obj2, 21, "female");

2. apply()

apply() işlevi benzer çalışır call() işlevi. call() ve application() işlevi arasındaki tek fark, diziye birden çok parametre iletebilmeniz ve bunları kullanabilmenizdir.

İşte bir application() örneği:

Kod:
const obj = {
 name:"John",
 surname:"Doe",
 getFullName: function(age, gender){
 console.log(this.name+" "+this.surname+" "+age+" "+gender);
 }
}
obj.getFullName.apply(obj2, [21, "female"]);

3. bind()

bind() , bir işlevin tam kopyasını döndürür ve onu bir nesneyle bağlar. Bu yöntem, bir yöntemin bir kopyasını bağlamak ve saklamak ve daha sonra kullanmak için kullanılır. Fonksiyonu çağırarak istediğiniz zaman kullanabilirsiniz.

İşte bir bind() örneği:

Kod:
const obj = {
 name:"John",
 surname:"Jane",
 getFullName: function(){
 console.log(this.name+this.surname);
 }
 }
const obj2 = {
 name:"Jane",
 surname:"Doe"
 }
let func = obj.getFullName.bind(obj2);
func();
 
Paylaşım için teşekkürler.
 
Paylaşım için teşekkürler. :)
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst