Msống đầu

Prototype là tư tưởng chủ chốt cơ bản trong JavaScript hơi quan trọng đặc biệt để xúc tiến OOP.. vào JavaScript. Vì JavaScript là một prototype-based language, không tồn tại tư tưởng class như những ngôn từ phía đối tượng không giống phía đối tượng không giống. Trong bài viết này, ta đang tò mò biện pháp thao tác làm việc của prototype rất có thể gọi nôm na là kế thừa (inheritance) làm việc javascript.

Bạn đang xem: Prototype nghĩa là gì

Prototype là gì?

Prototype là bề ngoài mà lại các object trong javascript thừa kế những kỹ năng từ 1 object không giống. Tất cả các object trong javascript đều phải sở hữu một prototype, với những object này kế thừa những thuộc tính (properties) tương tự như thủ tục (methods) từ bỏ prototype của chính bản thân mình.

Bạn yêu cầu chú ý rằng bản thân prototype là một object trong JS, được Gọi là prototype object (đối tượng prototype). Chúng ta cần phải biết điều này nhằm tránh lầm lẫn cùng với ở trong tính prototype của function.


*
*
*

Đoạn ví dụ trên vừa tạo ra một function khởi tạo là hàm Person(_age, _name). Thuộc tính prototype của hàm đó lại cất ở trong tính height. Cho đề nghị một object được tạo thành tự function khởi tạo nên này ta sẽ sở hữu được 3 nằm trong tính: age, name, với height.

Ta có thể truy vấn prototype object của đối tượng vừa tạo ra (instance vừa tạo) để thấy object này là 1 trong những object chứa 1 hàm khởi tạo ra và 1 trực thuộc tính height.

Xem thêm: Nghĩa Của Từ Wolf Là Gì ? Nghĩa Của Từ Wolf Trong Tiếng Việt

Tại sao prototype lại quan trọng đặc biệt vào Javascript?

Sự thừa kế trong Javascript

Để thực hiện kế thừa trong Js, chúng ta chỉ cần tạo ra 1 hàm khởi chế tạo ra. Sau đó thêm các ở trong tính cùng cách tiến hành vào ở trong tính prototype của hàm khởi sinh sản này.

Các instance tạo nên bởi vì hàm khởi tạo ra này sẽ cất những thuộc tính với phương thức được có mang sống bên trên. Do Javascript không tồn tại khái niệm class đề nghị để triển khai Việc kế thừa để không ngừng mở rộng vận dụng nlỗi các ngôn từ OOP khác, chúng ta nên Prototype.

//Tạo ra 1 hàm khởi chế tạo cơ sởfunction Animal(_age) this.age = _age; //Có thể thêm nằm trong tính vào nằm trong tính prototype của hàm khởi tạoAnimal.prototype.showAge = function() console.log( this.age );; //Tạo ra 1 hàm khởi sản xuất bé (vẫn dùng làm kế thừa hàm cơ sở)function Dog(_color) this.color = _color;//Thực hiện nay kế thừa, gán hàm khởi tạo nên của Animal cho prototype của DogDog.prototype = new Animal();Dog.prototype.showMàu sắc = function() console.log( this.color );; //Kiểm tra sự kế thừavar chophuquoc = new Dog("yellow");chophuquoc.age = 3;chophuquoc.showAge(); //3chophuquoc.showColor(); //yellowĐoạn code trên thì object chophuquoc áp dụng hàm showAge() thuộc Animal prototype bởi ta sẽ gán hàm khởi sinh sản của Animal vào prototype của Dog. Như vậy bạn có thể thấy rõ sự thừa kế trong js. Object chophuquoc đang thừa kế những gì vẫn tất cả vào Dog.prototype với thừa kế luôn phần đa thuộc tính nhưng Animal.prototype tất cả.

Truy ctràn lên các thuộc tính của đối tượng: Prototype chain


Prototype khôn cùng quan trọng đặc biệt vào Việc tạo điều kiện cho ta truy cập tới những trực thuộc tính và cách tiến hành của đối tượng người tiêu dùng. Lúc bọn họ truy cập vào một trong những Property của một Object, JavaScript đã tìm Property đó bên trong chính Object. Nếu không có nó sẽ liên tục tìm lên trên mặt Prototype của Object cùng cứ tiếp tục như thế cho đến lúc chạm mặt Object.prototype thì dừng và tạo ra hiệu quả (undefined nếu như không kiếm thấy).

Xem thêm: Gino Tống Là Ai - Diễn Viên Ginô Tống

Quá trình lặp lại này được hotline là chuỗi prototype (prototype chain) vào Javascript. Chính điều đó cùng ở trong tính prototype của function khiến cho hình thức kế thừa prototype-based mang đến Javascript.


Chuyên mục: ĐỊNH NGHĨA
Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *