Các Getter của thuộc tính ảo trong OOP trong JavaScript
Với các bộ truy cập, bạn có thể tạo ra các thuộc tính ảo, thực chất không tồn tại trong đối tượng. Hãy xem xét một ví dụ. Giả sử chúng ta có một lớp với hai thuộc tính công khai:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
}
Hãy tạo một thuộc tính thứ ba, sẽ chứa tên và họ. Để làm điều này, hãy tạo một bộ truy cập thuộc tính:
class User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
}
Hãy kiểm tra. Tạo một đối tượng của lớp, truyền tên và họ làm tham số:
let user = new User('john', 'smit');
In giá trị của các thuộc tính công khai:
console.log(user.name); // 'john'
console.log(user.surn); // 'smit'
Và bây giờ hãy in giá trị của thuộc tính ảo của chúng ta:
console.log(user.full); // 'john smit'