Tôi đã nghiên cứu kế thừa javascript trong một vài ngày và mặc dù tôi đã thực hiện khá nhiều tiến bộ nhưng có một số điều tôi chưa hiểu rõ.__proto__ và thừa kế trong Javascript
Ví dụ, tôi thấy hành vi này khá khó hiểu:
'__proto__
điểm bất động sản s đến một đối tượng mà không
Manager
là'
var Employee = function Employee() { this.company = 'xyz'; };
var Manager = function Manager() { this.wage = 'high'; };
var m = new Manager();
m; // { "wage": "high", __proto__ : Manager } -- no problems so far.
Manager.prototype = new Employee();
var n = new Manager;
m.company; // undefined
n.company; // "xyz"
m
s hiện nguyên mẫu. Đây là một chút phản trực giác, cho rằng:
Một đối tượng kế thừa các thuộc tính ngay cả khi chúng được thêm vào nguyên mẫu của nó sau khi đối tượng được tạo.
Taken từ JavaScript: The Definitive Guide, 5th Edition, By David Flanagan
thể hành vi này không được áp dụng cho các trường hợp nói trên, quá?
Có ai có thể làm rõ?