Fungsi Apply Pemrograman JavaScript
- Halaman Sebelumnya Fungsi Call JS
- Halaman Berikutnya Pembinangan Fungsi JS
metode penggunaan ulang
dengan apply()
metode, Anda dapat menulis metode untuk objek yang berbeda.
metode apply() JavaScript
apply()
metode dengan call()
metode sangat mirip:
dalam kasus ini,person
dari fullName
metode yang digunakanaplikasike person1
:
Contoh
var person = { fullName: function() { return this.firstName + " " + this.lastName; } } var person1 = { firstName: "Bill", lastName: "Gates", } person.fullName.apply(person1); // akan mengembalikan "Bill Gates"
perbedaan antara call() dan apply()
perbedaan nya adalah:
call()
metode menerima parameter secara terpisah.
apply()
metode menerima parameter dalam bentuk array.
Jika ingin menggunakan array daripada daftar parameter, maka apply()
sangat mudah digunakan.
metode apply() dengan parameter
apply()
metode menerima parameter dalam bentuk array:
Contoh
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"]);
dengan call()
metode banding:
Contoh
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");
untuk mensimulasikan metode max di atas array
Anda dapat menggunakan Math.max()
Fungsi mencari angka terbesar (di dalam daftar angka):
Contoh
Math.max(1,2,3); // akan kembalikan 3
Karena array JavaScript tidak memiliki metode max(), jadi Anda dapat menerapkan Math.max()
Fungsi.
Contoh
Math.max.apply(null, [1,2,3]); // Juga akan kembalikan 3
Parameter pertama (null) tak penting. Dalam contoh ini belum digunakan.
Contoh-contoh ini akan memberikan hasil yang sama:
Contoh
Math.max.apply(Math, [1,2,3]); // Juga akan kembalikan 3
Contoh
Math.max.apply(" ", [1,2,3]); // Juga akan kembalikan 3
Contoh
Math.max.apply(0, [1,2,3]); // Juga akan kembalikan 3
Mode Ketat JavaScript
Dalam mode ketat JavaScript, jika apply()
Jika parameter pertama bukan objek, maka ia akan menjadi pemilik fungsi yang dipanggil (objek). Dalam mode “tidak ketat”, ia menjadi objek global.
- Halaman Sebelumnya Fungsi Call JS
- Halaman Berikutnya Pembinangan Fungsi JS