Getter setter lớp JavaScript
Trong bài đăng này, chúng ta sẽ tìm hiểu cách tạo getters và setters trong lớp Javascript. Các lớp JavaScript, được giới thiệu trong ECMAScript 2015, chủ yếu là đường cú pháp đối với kế thừa dựa trên nguyên mẫu hiện có của JavaScript. Cú pháp lớp không giới thiệu mô hình kế thừa hướng đối tượng mới cho JavaScript Show
Tìm hiểu thêm về các lớp Javascript tại https. //www. hướng dẫn java. net/2019/04/guide-to-javascript-classes. html Lớp JavaScript - Getters và SettersTrong bài đăng này, chúng ta sẽ tìm hiểu cách tạo getters và setters trong lớp Javascript. Getters và setters hoạt động theo cặp. Một getter trả về giá trị hiện tại của biến và setter tương ứng của nó thay đổi giá trị của biến thành giá trị mà nó xác định Hãy tạo một lớp User Javascript và xác định một số thuộc tính bên dưới
Chúng tôi cũng tạo các phương thức getter và setter cho tất cả các thuộc tính trên. Lớp JavaScript - Ví dụ về Getters và SettersĐây là một mã Javascript hoàn chỉnh cho lớp Người dùng class User { constructor(firstName, lastName, emailId, age) { this._firstName = firstName; this._lastName = lastName; this._emailId = emailId; this._age = age; } set firstName(firstName) { this._firstName = firstName; } get firstName() { return this._firstName; } set lastName(lastName) { this._lastName = lastName; } get lastName() { return this._lastName; } set emailId(emailId) { this._emailId = emailId; } get emailId() { return this._emailId; } set age(age) { this._age = age; } get age() { return this._age; } } Trong lớp của chúng tôi ở trên, chúng tôi có một getter và setter cho tất cả các thuộc tính. Chúng tôi sử dụng _ để tạo một giá trị riêng biệt để lưu trữ thuộc tính tên của chúng tôi. Nếu không sử dụng quy ước này, chúng tôi sẽ gặp lỗi mỗi khi chúng tôi gọi get hoặc set. Ví dụ, tại thời điểm này Để hiển thị giá trị hiện tại của thuộc tính _firstName của đối tượng người dùng, chúng ta có thể sử dụng người dùng. Phương thức lấy FirstName. Để gán một giá trị mới cho thuộc tính _firstName, chúng ta có thể sử dụng người dùng. Phương thức thiết lập firstName="new value" Javascript Object Accessors được sử dụng để truy cập và thao tác các thuộc tính của đối tượng. e. các giá trị được liên kết với các đối tượng javascript. Các phương thức getter và setter trong Javascript chủ yếu được sử dụng làm bộ truy cập đối tượng. getter và setter trong javascript được sử dụng để thay đổi giá trị thuộc tính Phạm vi của Điều khoảnTrong bài này chúng ta sẽ tìm hiểu
Trình mô tả truy cậpHãy tưởng tượng bạn phải làm thẻ ID cho 100 sinh viên của một chi nhánh. Tất cả các thẻ này sẽ có các trường giống nhau tôi. e. tên, lớp, rollNo, v.v. Mỗi CMND sẽ có một giá trị khác nhau cho các trường này Nếu chúng ta chuẩn bị thực hiện tác vụ trên bằng Lập trình hướng đối tượng, thì "Thẻ" có thể là một lớp và các ID riêng lẻ có thể là đối tượng của nó. Bây giờ câu hỏi là, "Làm cách nào để chúng tôi gán giá trị cho các trường này? Hoặc Làm cách nào để chúng tôi truy cập các trường này?" Bộ mô tả thuộc tính là một đối tượng JavaScript đơn giản được liên kết với từng thuộc tính của đối tượng chứa thông tin về thuộc tính đó, chẳng hạn như giá trị của nó và siêu dữ liệu khác. Bộ mô tả thuộc tính có trong các đối tượng có hai hương vị chính. bộ mô tả dữ liệu và bộ mô tả truy cập. Bộ mô tả dữ liệu là thuộc tính có giá trị, có thể ghi hoặc không Accessor Descriptors trong Javascript là các thuộc tính được mô tả bởi một cặp hàm getter-setter. Các thuộc tính của bộ truy cập không có giá trị và không thể ghi được, mà thay vào đó, chúng phải nhận và đặt các hàm Ghi chú. Bộ mô tả truy cập là các đối tượng Một Accessor Descriptor có thể có
JavaScript Getter (Từ khóa get)Cú pháp get trong Javascript liên kết một thuộc tính đối tượng với một hàm sẽ được gọi khi thuộc tính đó được tra cứu Theo thuật ngữ của giáo dân, trình thu thập Javascript cung cấp cho chúng tôi một cách để xác định thuộc tính của Đối tượng. Các phương thức getter Javascript chủ yếu được sử dụng để truy cập các thuộc tính của một đối tượng Ghi chú. Giá trị thuộc tính của đối tượng không được tính cho đến khi nó được truy cập cú pháp
Thí dụ
JavaScript Setter (Bộ từ khóa)Cú pháp thiết lập liên kết một thuộc tính đối tượng với một hàm sẽ được gọi khi có nỗ lực thiết lập thuộc tính đó Bộ Javascript thực thi bất cứ khi nào một thuộc tính cụ thể bị thay đổi. Nói chung, Setters trong javascript được sử dụng tương ứng với getters để tạo một loại thuộc tính giả. Các phương thức setter Javascript được sử dụng để thay đổi giá trị của một đối tượng cú pháp
Thí dụ
đếm đượcMột đối tượng JavaScript về cơ bản là một danh sách các cặp khóa-giá trị không có thứ tự. Vì vậy cho. trong các vòng lặp thường được sử dụng để truy cập các thuộc tính của các đối tượng Thuộc tính liệt kê trong javascript được sử dụng để xác định xem một thuộc tính có thể truy cập được hay không khi các thuộc tính của đối tượng được liệt kê bởi lệnh for. trong vòng lặp Ghi chú. Theo mặc định, tất cả các thuộc tính đối tượng được tạo bởi trình khởi tạo hoặc phép gán được liệt kê Thí dụ
Ghi chú. đối tượng. defineProperty() đã được thảo luận chi tiết trong phần tiếp theo Thí dụ
cấu hìnhThuộc tính có thể định cấu hình trong javascript có thể sửa đổi hành vi của các thuộc tính của đối tượng. Nó có thể làm cho chúng không thể đếm được, không thể ghi hoặc thậm chí không thể định cấu hình. Các thuộc tính có thể định cấu hình là những thuộc tính duy nhất có thể bị xóa bằng toán tử xóa. Theo mặc định, giá trị của nó là true Các thuộc tính của đối tượng Javascript chỉ có thể bị xóa hoặc sửa đổi nếu thuộc tính có thể định cấu hình cho đối tượng là đúng, nếu không, chúng ta không thể thay đổi các thuộc tính của đối tượng Thí dụ
Chức năng so với GettersSự khác biệt cơ bản giữa hàm và getters là trong lệnh gọi hàm, chúng tôi đang truy cập hàm trong khi trong lệnh gọi getter, chúng tôi đang truy cập thuộc tính. Do đó, cú pháp getter trở nên đơn giản và dễ đọc hơn hàm Thí dụTruy cập thuộc tính đối tượng bằng chức năng ________số 8_______đầu ra Truy cập thuộc tính đối tượng bằng getter
Chất lượng dữ liệu khi sử dụng Getters và SettersGetters và Setters được sử dụng để đảm bảo chất lượng dữ liệu tốt hơn. Các phương thức getter và setter trong javascript cung cấp quyền kiểm soát tập trung về cách một trường nhất định được khởi tạo và cung cấp cho người dùng, do đó giúp xác minh và gỡ lỗi dễ dàng hơn Thí dụ
Mục tiêu. định nghĩaProperty() trong JavaScriptđối tượng. Phương thứcdefineProperty() trong javascript được sử dụng để xác định một thuộc tính mới trực tiếp trên một đối tượng. đối tượng. defineProperty() trả về một đối tượng. Nó thường được sử dụng để thay đổi cờ của các thuộc tính cú pháp0
Thí dụ1 Lý do nên sử dụng Getters và Setters
Getters/Setters thông minh hơnGetter và setter trong Javascript có thể được sử dụng làm trình bao bọc trên các giá trị thuộc tính “thực”. Điều này được thực hiện để có thêm quyền kiểm soát đối với các hoạt động với chúng bằng cách sử dụng mà chúng tôi có thể thêm các ràng buộc, v.v. Ví dụ: chúng tôi có thể hạn chế người dùng giữ tên quá ngắn cho thuộc tính tên trong ví dụ đã thảo luận ở trên Thí dụ 2 Ghi chú Về mặt kỹ thuật, mã bên ngoài có thể truy cập tên trực tiếp bằng cách sử dụng người dùng. Tên. Nhưng có một quy ước được biết đến rộng rãi rằng các thuộc tính bắt đầu bằng dấu gạch dưới "" là thuộc tính bên trong và không được chạm vào từ bên ngoài đối tượng Sử dụng cho khả năng tương thíchGetter và Setter trong Javascript có thể được sử dụng để cho phép kiểm soát thuộc tính dữ liệu "thông thường" bất cứ lúc nào. Nó được thực hiện bằng cách thay thế thuộc tính dữ liệu thông thường bằng getter và setter và thay đổi hành vi của nó Thí dụ Giả sử rằng chúng ta đang tạo các đối tượng Người dùng với các thuộc tính tên và tuổi 4 |