nguyên mẫu và kế thừa javascript [trùng lặp]
Câu hỏi của tôi là Đối tượng nằm cuối cùng trên chuỗi nguyên mẫu, tất cả các đối tượng kế thừa thuộc tính và phương thức từ nó như thế nào nó là phương thức kế thừa từ Function.prototype, tại sao Object.__proto__ === Function.prototype// true, tại sao Object.__proto__không phải là null.
Trả lời
Cơ bản Objecttrong JavaScript phải có một cách để nó được khởi tạo, vì vậy nó yêu cầu một prototypeđối tượng hỗ trợ trong các dòng như thế này:
let myObj = new Object();
Và đó là lý do tại sao Object.__proto__không null.
Đối Functiontượng là một kiểu đối tượng đặc biệt tạo điều kiện cho việc khởi tạo đối tượng thông qua một hàm tạo và khi được sử dụng theo cách này, nó được gọi là "hàm tạo". Vì vậy, nó có ý nghĩa Objectkhi kế thừa từ một Functionđối tượng để các thể hiện đối tượng có thể được tạo ra.
Chức năng cũng là một đối tượng. Vì vậy, nó cũng kế thừa từ Object.
Nhưng đừng nhầm lẫn bởi Object.__proto__. Đó là thứ mà trình duyệt thêm vào và không thực sự là một phần của ngôn ngữ. Vì vậy, đừng dựa vào nó hoặc sử dụng nó.
Về cơ bản, Function.prototypelà Object.__proto__.