Sifat Persendirian dalam OOP dalam JavaScript
Sifat objek yang boleh dibaca dan ditulis dari luar dipanggil awam. Terdapat juga sifat persendirian, yang hanya akan boleh diakses di dalam kelas.
Nama sifat persendirian perlu
dimulakan dengan simbol #.
Selain itu, sifat sedemikian semestinya
diisytiharkan pada awal kod kelas.
Mari kita lakukan ini:
class User {
#name;
}
Sekarang mari kita catat data ke dalam sifat kita. Ini boleh dilakukan, contohnya, dalam pembina kelas:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
Sekarang mari buat kaedah, yang akan mengembalikan nilai sifat kita:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Mari buat objek kelas, dengan menghantar nama pengguna sebagai parameter:
let user = new User('john');
Cubaan untuk merujuk secara langsung kepada sifat kita di luar kelas akan menyebabkan ralat:
console.log(user.#name); // ralat
Dan memanggil kaedah kita akan membenarkan sifat ini dibaca:
console.log(user.show()); // akan memaparkan 'john'
Dalam kelas Employee, buatlah
tiga sifat persendirian: nama, gaji
dan umur.
Hantarkan nilai sifat-sifat ini sebagai parameter pembina.
Buat kaedah, yang akan memaparkan data pekerja.