Используя чистый JavaScript для наследования, я обычно это делаю:
function A() {}
A.prototype.run = function () {};
function B() {}
B.prototype = new A;
B.prototype.constructor = B;
Поскольку в конструктор нет аргументов, новый A не имеет права жаловаться. Теперь я не нашел способ сделать наследование, если у конструктора есть аргументы. Например,
function A(x, y) {}
A.prototype.run = function () {};
function B(x, y) {}
B.prototype = new A;
B.prototype.constructor = B;
Я мог бы передать некоторые произвольные значения, например:
B.prototype = new A(null, null);
В некоторых случаях мне может потребоваться проверить x и y в конструкторе A. В некоторых крайних случаях мне нужно бросать ошибки при проверке x или y. Тогда нет способа, чтобы B наследовал от A, используя новый A.
Любые предложения?
Спасибо!