Skip to content

Commit 4025e6f

Browse files
authored
Create Function-Arguments-Destructuring.js
1 parent b574d26 commit 4025e6f

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

Function-Arguments-Destructuring.js

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
2+
3+
// Destructuring Function Arguments
4+
5+
const mhs1 = {
6+
nama: 'Singo Dimedjo',
7+
umur: 33,
8+
9+
}
10+
11+
//buat function declaration-nya (ini tanpa destructuring)
12+
function cetakMhs1(nama, umur) {
13+
return `Halo, nama saya ${nama}, saya berumur ${umur} tahun.`;
14+
}
15+
16+
console.log(cetakMhs1(mhs1.nama, mhs1.umur)); // Halo, nama saya Singo Dimedjo, saya berumur 33 tahun.
17+
18+
//cara lain (ini juga tanpa destructuring:
19+
20+
function cetakMhs2(mhs) {
21+
return `Halo, nama saya ${mhs.nama}, umur saya ${mhs.umur} tahun.`
22+
}
23+
24+
console.log(cetakMhs2(mhs1)); // Halo, nama saya Singo Dimedjo, umur saya 33 tahun.
25+
26+
//dengan cara destructuring
27+
28+
function cetakMhs3({ nama, umur }) {
29+
return `Halo, nama saya ${nama}, Saya berumur ${umur} tahun.`
30+
}
31+
32+
console.log(cetakMhs3(mhs1)); // Halo, nama saya Singo Dimedjo, Saya berumur 33 tahun.
33+
34+
//contoh destructuring pada fungsi yang komplek (object di dalam object)
35+
36+
const mhs2 = {
37+
nama: 'Gatot Kaca',
38+
umur: 32,
39+
40+
nilai: {
41+
tugas: 80,
42+
uts: 85,
43+
uas: 75
44+
} // ini object di dalam object ada dalam tanda {}
45+
}
46+
47+
function cetakMhs4({ nama, umur, nilai: {tugas, uts, uas} }) {
48+
return `Halo, nama saya ${nama}, saya berumur ${umur} tahun, dan nilai UAS saya adalah ${uas}.`
49+
} // nilei di-destructuring, (object di dalam object)
50+
console.log(cetakMhs4(mhs2)); // Halo, nama saya Gatot Kaca, saya berumur 32 tahun, dan nilai UAS saya adalah 75.
51+
52+

0 commit comments

Comments
 (0)