Destrukturisasi Parameter Fungsi dalam JavaScript
Destrukturisasi memiliki area penerapan yang sangat penting lainnya - penyampaian parameter fungsi. Intinya adalah sebagai berikut: jika sebuah fungsi menerima array sebagai parameternya, kita dapat menentukan langsung dalam deklarasi fungsi cara mendestrukturisasi array tersebut.
Mari kita lihat contohnya. Misalkan kita memiliki fungsi yang parameternya menerima array berisi tahun, bulan, dan hari:
func([2025, 12, 31]);
Mari kita tentukan langsung dalam parameter fungsi, ke dalam variabel mana array ini harus dipecah:
function func([year, month, day]) {
console.log(year); // akan menampilkan 2025
console.log(month); // akan menampilkan 12
console.log(day); // akan menampilkan 31
}
Konstruksi di atas harus dianggap sebagai satu parameter fungsi. Jika diinginkan, kita bisa menambahkan parameter lain:
func('str1', [2025, 12, 31], 'str2');
function func(param1, [year, month, day], param2) {
console.log(param1); // akan menampilkan 'str1'
console.log(year); // akan menampilkan 2025
console.log(month); // akan menampilkan 12
console.log(day); // akan menampilkan 31
console.log(param2); // akan menampilkan 'str2'
}
Dan dalam contoh berikutnya, parameter pertama dan kedua fungsi diteruskan sebagai array dan kita mendestrukturisasi keduanya:
func([2025, 12, 31], [2026, 11, 30]);
function func([year1, month1, day1], [year2, month2, day2]) {
console.log(year1); // akan menampilkan 2025
console.log(month1); // akan menampilkan 12
console.log(day1); // akan menampilkan 31
console.log(year2); // akan menampilkan 2026
console.log(month2); // akan menampilkan 11
console.log(day2); // akan menampilkan 30
}
Ubah kode berikut melalui destrukturisasi sesuai teori yang dipelajari:
function func(employee) {
let name = employee[0];
let surname = employee[1];
let department = employee[2];
let position = employee[3];
let salary = employee[4];
}
func( ['John', 'Smit', 'development', 'programmer', 2000] );
Ubah kode berikut melalui destrukturisasi sesuai teori yang dipelajari:
function func(employee) {
let name = employee[0];
let surname = employee[1];
let info = employee[2];
}
func( ['John', 'Smit', 'development', 'programmer', 2000] );
Ubah kode berikut melalui destrukturisasi sesuai teori yang dipelajari:
function func(employee) {
let name = employee[0];
let surname = employee[1];
let department = employee[2];
let position;
if (arr[3] !== undefined) {
position = arr[3];
} else {
position = 'junior';
}
}
func( ['John', 'Smit', 'development'] );
Ubah kode berikut melalui destrukturisasi sesuai teori yang dipelajari:
function func(department, employee, hired) {
let name = employee[0];
let surname = employee[1];
let year = hired[0];
let month = hired[1];
let day = hired[2];
}
func( 'development', ['John', 'Smit'], [2018, 12, 31] );