Sngơi nghỉ dĩ ta nói điều đó nguyên nhân là Khi hỏi object 1 property làm sao đó, trường hợp phiên bản thân nó ko làm dc, nó đã nhờ vào prototype của nó, prototype này tuy-mặt-đầy-thẹo cơ mà ví như vẫn chưa làm nổi, đang lại liên tục hỏi prototype cấp cho trên với cứ chũm cho tới thằng prototype đại ca tuyệt nhất, quyền lực độc nhất mang tên là Object.prototype mà lại giang hồ nói một cách khác là cha già.
Bạn đang xem: Prototyping là gì
Object.getPrototypeOf(Object.prototype)// nullTrên cấp của Object.prototype là ko bao gồm, cho nên vì thế nó là soái ca tốt nhất.
Array khôn cùng lưu giữ manh còn chỉ nghe lệnh cung cấp trên của nó là Array.prototype, nhưng không mong muốn thằng này cũng chính là quân nhân của Object.prototype thôi.
Function chợ búa cũng vậy, không còn mình vì chưng đại ca Function.prototype của nó. Vị đại ca này, Tuy khỏe mạnh tuy vậy vẫn là đàn em của Object.prototype.
Object.getPrototypeOf(<>) === Array.prototype// trueObject.getPrototypeOf(Function) === Function.prototype// true

bởi thế ta có thể nói trong javascript, đại đa phần phần đa là lính của object, tuyệt nói theo cách khác vào javascript toàn thể gần như là object, ngoài cặp bà xã ông xã xuyên suốt ngày sinh sống vào cổ chiêu tập, ko ưa thích ra đường: anh dương-undefined với chị tiểu-long-null.
Hiểu đặc tính của prototype, ta có thể tận dụng nó nhằm thêm công dụng mang đến môn đệ, loại như trường hợp sư prúc tất cả làm thịt ăn thì đệ tử cũng bắt buộc được phân tách chén canh.
Xem thêm: "Cheese Curd Là Gì Trong Tiếng Việt? Curds Là Gì
Lấy ví dụ, trường hợp thuở đầu bà xã chỉ biết mổi nấu nướng nạp năng lượng.
function Wife() this.cook = function() console.log("nấu bếp mì chua-cay-hao-hao"); var ngoctrinch = new Wife();ngoctrinh.cook(); // in ra nấu mì ...mà thật ra thì nạp năng lượng mì mãi cũng ngán, do đó bọn họ vẫn thêm nhân tài mang đến vợ
// thêm tác dụng ấy vào function bà xã.Wife.prototype.ay = function() // chức năng này cạnh tranh, bởi chúng ta trường đoản cú code !bởi thế, họ biết ngoctrinch là môn đệ của Wife, tốt nói cách khác là instance của constructor Wife. Do đó ngoctrinc ngay lập tức lập tức biết "ấy". Chúng ta rất có thể trực tiếp Điện thoại tư vấn ngoctrinc.ay() nhằm chất vấn.
Nguy hiểm hơn thế nữa, chúc ta rất có thể trực tiếp dạy mang đến Object.prototype tốt cố võ thuật makeSandwich:
Object.prototype.makeSandwich = function() console.log("suvì chưng make me a sandwich");Và như thế ngoctrinc vẫn biết làm bánh
ngoctrinch.makeSandwich();// suvị make me a sandwichLà một coder giỏi tò và tìm, chúng ta đề nghị kiểm tra lại coi ngoctrinh biết có tác dụng các gì.
for(var skill in ngoctrinh) console.log(skill); // cook (trường đoản cú biết)// ay ( bà bầu vợ dạy)// makeSandwich ( mẹ của chị em vợ dạy dỗ )Tuy nhiên, thật bất ngờ ngoctrinc còn biết toString(), toLocaleString(), hasOwnProperty() v..v.. nữa, mấy thứ này là kim cương tặng khuyến mãi kèm từ hai bên đơn vị nội ngoại của ngoctrinh, mà họ ko đề nghị.
Chưa không còn, ai lại mong muốn 1 bà xã cơ mà tuỳ thời sẽ bị đơn vị vk dạy dỗ cung ứng phần nhiều thiết bị không giống, cấp thiết kiểm soát và điều hành dc. Một ngày đẹp mắt ttách như thế nào kia, lỡ như:
Object.prototype.karate = function() console.log("dùng khi ông chồng nhậu khuya");Thì coi nhỏng xong xuôi. Do kia Một trong những trường hợp này, lúc nhưng họ ko phải mang lại sức khỏe của prototype, ko nên kế thừa gì cả, thì Object.create(null) sẽ giúp đỡ chúng ta tạo nên object thuần khiết, sạch sẽ ko kế thừa.
var ngoctrinc = Object.create(null);Object.prototype.karate = function() console.log("cần sử dụng khi ông chồng nhậu khuya");ngoctrinh.karate(); // TypeError: ngoctrinch.karate is not a function// yay so much win !Vậy là bọn họ tha hồ đi nhậu về muộn.