Pemanggilan Fungsi JavaScript
- Halaman Sebelumnya Fungsi Parameter JS
- Halaman Berikutnya Fungsi Pemanggilan JS
Kode internal fungsi JavaScript akan dijalankan saat 'seseuah' memanggilnya.
Panggil fungsi JavaScript
Saat fungsi diDefinisiketika kode internal fungsi tidak akan dijalankan.
Saat fungsi diPanggilketika kode internal fungsi akan dijalankan.
Panggil fungsi biasanya juga disebut 'memulai fungsi' atau 'melaksanakan fungsi'.
Dalam tutorial ini, kita menggunakan “Panggil”。
Panggil fungsi dalam bentuk fungsi
Instansi
function myFunction(a, b) { return a * b; } myFunction(10, 2); // akan kembali 20
Fungsi di atas tidak milik objek manapun. Tetapi di JavaScript, selalu ada objek global default.
Dalam HTML, objek global default adalah halaman HTML sendiri, semua fungsi di atas 'milik' halaman HTML.
Dalam browser, objek halaman ini adalah jendela browser. Fungsi di atas otomatis menjadi fungsi jendela.
myFunction() dan window.myFunction() adalah fungsi yang sama:
Instansi
function myFunction(a, b) { return a * b; } window.myFunction(10, 2); // akan mengembalikan 20
Ini adalah metode umum untuk memanggil fungsi, tetapi bukanlah kebiasaan yang baik.
Variabel global, method, atau fungsi mudah mengakibatkan konflik nama dan kelebihan di objek global.
this kata kunci
dalam JavaScript disebut this
bagian, merujuk kepada objek yang "miliki" kode saat ini.
this
nilai, saat digunakan di dalam fungsi, adalah objek yang "miliki" fungsi ini.
Perhatikan this
Bukan variabel. Ini adalah kata kunci. Anda tidak dapat mengubah this
nilai.
objek global
Ketika memanggil objek tanpa objek pemilik,this
nilai menjadi objek global.
Dalam browser web, objek global adalah objek browser.
Contoh ini menggunakan this
nilai mengembalikan objek window ini:
Instansi
var x = myFunction(); // x akan menjadi objek window function myFunction() { return this; }
Mempanggil fungsi sebagai fungsi global akan this
nilai menjadi objek global.
Menggunakan objek window sebagai variabel dapat dengan mudah mematahkan program.
Memanggil fungsi sebagai method
Dalam JavaScript, Anda dapat menambahkan fungsi sebagai method objek.
Contoh di bawah ini menciptakan objek (myObject), dengan dua properti (firstName dan lastName), serta method (fullName):
Instansi
var myObject = { firstName: "Bill", lastName: "Gates", fullName: function () { return this.firstName + " " + this.lastName; } } myObject.fullName(); // akan mengembalikan "Bill Gates"
method fullName adalah fungsi. Fungsi ini milik objek. myObject adalah pemilik fungsi.
dikenal sebagai this
bagian, adalah objek yang "miliki" kode JavaScript ini. Dalam contoh ini,this
nilai adalah myObject.
Coba saja! Ubah method fullName untuk mengembalikan this
nilai:
Instansi
var myObject = { firstName: "Bill", lastName: "Gates", fullName: function () { return this; } } myObject.fullName(); // akan mengembalikan [object Object] (objek pemilik)
Panggil fungsi sebagai metode objek, akan menyebabkan this
nilai menjadi objek itu sendiri.
Panggil fungsi melalui konstruktur fungsi
Jika fungsi dipanggil sebelumnya adalah new
Kata kunci, maka ini adalah panggilan konstruktur fungsi.
Itu terlihat seperti Anda membuat fungsi baru, tetapi karena fungsi JavaScript adalah objek, Anda sebenarnya membuat objek baru:
Instansi
// Ini adalah konstruktur fungsi: function myFunction(arg1, arg2) { this.firstName = arg1; this.lastName = arg2; } // Membuat objek baru: var x = new myFunction("Bill", "Gates"); x.firstName; // akan kembalikan "Bill"
Panggilan konstruktur akan membuat objek baru. Objek baru akan mewarisi properti dan metode dari konstruktur.
Dalam konstruktur this
Kata kunci tanpa nilai.
this
nilai akan menjadi objek baru yang dibuat saat memanggil fungsi.
- Halaman Sebelumnya Fungsi Parameter JS
- Halaman Berikutnya Fungsi Pemanggilan JS