Prototype trong JavaScript

0

Đối tượng nguyên mẫu

Để dễ hiểu, chúng ta hãy xem xét chức năng sau:

Khi Chức năng Person được tạo, theo mặc định, nó sẽ có Thuộc tính có tên là Nguyên mẫu (lưu ý rằng hàm trong JavaScript cũng là một Đối tượng). Thuộc tính này là một Đối tượng mà ban đầu chỉ chứa một Thuộc tính là một Constructor trỏ về hàm Person. Và khi hàm Person này được gọi với từ Key New, Object mới được tạo sẽ kế thừa tất cả các thuộc tính từ Peron.prototype. Để kiểm tra, chúng tôi thêm Person.prototype một Phương thức được gọi là showFullName () như sau:

Tải game crack việt hoá tại: https://daominhha.com

Mọi người còn gọi là Đối tượng Nguyên mẫu Person.prototype hoặc nhỏ gọn hơn Nguyên mẫu của Đối tượng Justin, cũng như bất kỳ Đối tượng nào được tạo bằng cú pháp Người mới (…).

Thực ra chúng ta có thể khai báo Method showFullName () ngay bên trong hàm Person. Tuy nhiên, vì phương thức showFullName () giống nhau trong tất cả các Đối tượng, chúng tôi đặt nó trên Person.prototype để các đối tượng kế thừa (nguyên tắc Không lặp lại bản thân – KHÔ). Và đó cũng là một trong những Phương pháp hay nhất trong JavaScript: các hàm tạo chỉ khởi tạo các thuộc tính riêng biệt cho từng Đối tượng được tạo và các phương thức áp dụng chung cho tất cả Đối tượng sẽ được tạo trong Nguyên mẫu.

Mình nghĩ bạn cần xem =>  Call Center là gì? Tổng đài CSKH thông qua điện thoại

Các đối tượng mặc định có sẵn trong JavaScript được xây dựng theo cách tương tự như trên. Ví dụ: Nguyên mẫu của Đối tượng được tạo bằng cú pháp New Object () hoặc {} là Object.prototype, Mảng được tạo bằng Mảng Mới () hoặc [] là Array.prototype, v.v. đối với các Đối tượng khác như RegExp hoặc Date. Object.prototype được kế thừa bởi tất cả các Object và bản thân nó không có Prototype (nói cách khác, nguyên mẫu của nó là null).

Trên thực tế, chúng ta không thể truy cập Nguyên mẫu của một đối tượng và không cần thiết phải sử dụng nó, tuy nhiên, trong Chrome, nó cho phép chúng ta truy cập Nguyên mẫu của một đối tượng thông qua thuộc tính “dummy” là __proto__.

Chuỗi nguyên mẫu

Cơ chế Chuỗi nguyên mẫu rất đơn giản: khi chúng ta truy cập Thuộc tính của một Đối tượng, Công cụ JavaScript sẽ tìm thấy Thuộc tính đó bên trong chính Đối tượng, nếu không, nó sẽ tìm kiếm trên Nguyên mẫu của Đối tượng, v.v. Khi gặp Object.prototype, nó sẽ dừng lại và tạo ra kết quả (không xác định nếu không tìm thấy).

Ví dụ:

Trong ví dụ trên, Object.create () sẽ tạo một Object obj2 mới với Prototype obj1. Và như đã thấy, mặc dù Obj2 không có Thuộc tính a, chúng ta vẫn có thể truy cập nó nhờ cơ chế Chuỗi nguyên mẫu.

Phần kết luận

Tôi xin tạm dừng bài viết tại đây vì có lẽ khá dài. Trên đây, tôi đã cố gắng trình bày về Prototype một cách dễ hiểu. Hy vọng bài viết này sẽ giúp bạn hiểu thêm về khái niệm Prototype trong JavaScript.

Mình nghĩ bạn cần xem =>  Bottleneck - Nghẽn cổ chai là gì? Các trường hợp nghẽn cổ chai phổ biến

✤ Top 20 bài viết Tổng Hợp mới nhất :

Mình nghĩ bạn cần xem =>  App là gì ? Và app có ý nghĩa như thế nào?

Xem thêm nhiều Tổng Hợp mới hay

Leave A Reply

Your email address will not be published.