Parameter Fungsi JavaScript
JavaScript function
tidak melakukan pemeriksaan apa pun pada nilai parameter (argumen).
Parameter Fungsi dan Argumen
Sebelumnya dalam tutorial ini, Anda telah mempelajari bahwa fungsi dapat memiliki parameter :
function functionName(parameter1, parameter2, parameter3) {
// code to be executed
}
Parameter fungsi adalah nama yang tercantum dalam definisi fungsi.
Argumen fungsi adalah nilai nyata yang diteruskan ke (dan diterima oleh) fungsi.
Aturan Parameter
Definisi fungsi JavaScript tidak menentukan tipe data untuk parameter.
Fungsi JavaScript tidak melakukan pemeriksaan tipe pada argumen yang diteruskan.
Fungsi JavaScript tidak memeriksa jumlah argumen yang diterima.
Parameter Default
Jika suatu fungsi dipanggil dengan argumen yang hilang (kurang dari yang dideklarasikan), nilai yang hilang diatur ke
undefined
.
Terkadang ini dapat diterima, tetapi terkadang lebih baik untuk menetapkan nilai default ke parameter:
Contoh
function myFunction(x, y) {
if (y === undefined) {
y = 2;
}
}
ECMAScript 2015 memungkinkan nilai parameter default dalam deklarasi fungsi:
function myFunction(x, y = 2) {
// function code
}
Objek Argumen
Fungsi JavaScript memiliki objek bawaan yang disebut objek argumen.
Objek argumen berisi larik argumen yang digunakan saat fungsi dipanggil (dipanggil).
Dengan cara ini Anda cukup menggunakan fungsi untuk menemukan (misalnya) nilai tertinggi dalam daftar angka:
Contoh
x = findMax(1, 123, 500, 115, 44, 88);
function findMax() {
let max = -Infinity;
for (let i = 0; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
}
Atau buat fungsi untuk menjumlahkan semua nilai input:
Contoh
x = sumAll(1, 123, 500, 115, 44, 88);
function sumAll() {
let sum = 0;
for (let i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
Jika suatu fungsi dipanggil dengan terlalu banyak argumen (lebih dari yang dideklarasikan), argumen ini dapat dicapai dengan menggunakan objek argument .
Argumen Dilewati oleh Nilai
Parameter, dalam panggilan fungsi, adalah argumen fungsi.
Argumen JavaScript diteruskan dengan nilai : Fungsi hanya mengetahui nilai, bukan lokasi argumen.
Jika suatu fungsi mengubah nilai argumen, itu tidak mengubah nilai asli parameter.
Perubahan argumen tidak terlihat (tercermin) di luar fungsi.
Objek Dilewati oleh Referensi
Dalam JavaScript, referensi objek adalah nilai.
Karena itu, objek akan berperilaku seperti dilewatkan dengan referensi:
Jika suatu fungsi mengubah properti objek, itu mengubah nilai aslinya.
Perubahan pada properti objek terlihat (tercermin) di luar fungsi.