Сообщение от 12345c
|
В результате получим 2 различных типа наследования.
|
Сравним классическое наследование:
var A = {};
var B = Object.create(A);
A.property = 1;
alert(B.property); // 1
А вот это уже сложно назвать наследованием:
var extend = function(A, B) {
var __own__ = Object.prototype.hasOwnProperty;
for (var i in B)
__own__.call(B, i) && (A[i] = B[i]);
};
var A = {};
var B = {
foo: 1
};
extend(A, B);
B.bar = 1;
alert([
A.foo,
A.bar
]); // 1, undefined