⊗jsOpBsGSA 18 of 60 menu

Lợi ích của setter và getter trong OOP JavaScript

Trong bài học trước, chúng ta đã tạo getter và setter cho mỗi thuộc tính. Có thể nảy sinh câu hỏi, tại sao cần những thứ phức tạp như vậy, vì trên thực tế có thể đạt được hiệu quả tương tự nếu làm cho các thuộc tính là công khai thay vì riêng tư.

Vấn đề là getter và setter có lợi thế: trước khi truy cập thuộc tính có thể thực hiện một số kiểm tra. Ví dụ, trong trường hợp của chúng ta, khi ghi tên và họ, chúng ta có thể kiểm tra rằng giá trị mới không phải là một chuỗi rỗng:

class User { #name; #surn; setName(name) { if (name.length > 0) { this.#name = name; } else { throw new Error('name is incorrect'); } } setSurn(surn) { if (surn.length > 0) { this.#surn = surn; } else { throw new Error('surn is incorrect'); } } getName() { return this.#name; } getSurn() { return this.#surn; } }

Hãy kiểm tra xem điều này hoạt động thế nào. Đầu tiên, hãy tạo một đối tượng của lớp:

let user = new User;

Bây giờ hãy thử ghi một giá trị đúng:

user.setName('john');

Và bây giờ hãy thử ghi một giá trị không đúng:

user.setName(''); // lỗi

Trong lớp Employee, trong setter của tuổi, hãy thực hiện kiểm tra rằng tuổi phải từ 0 đến 120.

Trong lớp Employee, trong getter của lương, hãy làm sao để khi đọc lương, ở cuối giá trị của nó sẽ được thêm ký hiệu đô la.

Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối