-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path46_getterdansetter.js
executable file
·26 lines (26 loc) · 1.03 KB
/
46_getterdansetter.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/**
* --getter dan setter --
* kemampuan membuat function yang berbeda utk mengambil data (getter)
* dan mengubah data (setter) pada sebuah property di object.
* dengan menggunakan getter dan setter kita bisa melakukan hal apapun pada funct
* sebelum sebuah property diakses atau diubah. misal menambah validasi dll
*
*/
const person = {
firstName: "ekoo",
lastName: "kurniawan",
get fullName(){ //fungsi get dengan properti tanpa parameter
return `${this.firstName} ${this.lastName}`; //this mengacu ke objek skrg
},
set fullName(val){ //fungsi set dengan 1 parameter
const array= val.split(" "); //simpan nilai fullName ke val utk dsplit
this.firstName = array[0];
this.lastName = array[1];
}
}
//otomatis memanggil get fullName()
person.fullName = "jok owiee"
console.log(person.fullName);
console.table(person);
// fitur getter dan setter tidak terlalu populer di kalangan programmer js
// tetapi fitur ini membuat JS tidak kalah dengan bahasa pemrograman lainnya seperti java, c# dan php