Фон
Я создаю приложение на основе JavaScript, которое по-разному работает на мобильных и настольных устройствах.Однако, за исключением манипуляций с DOM, большая часть кода является общей для обеих платформ, поэтому я структурировал все файлы, такие как: * foo.core.js * foo.mobile.js * foo.web.js
И в надеждеиспользовать объектно-ориентированные методы для написания более чистого кода.
Проблема:
У меня есть два файла JavaScript с классами
Файл 1:
function ClassA()
{}
ClassA.prototype.foo = function(){};
GreatGrandChildA.prototype = new GrandChildA(); // this is where the error is
function GreatGrandChildA ()
{}
Файл 2:
ChildA.prototype = new ClassA();
function ChildA () // ChildA inherits ClassA
{}
GrandChildA.prototype = new ChildA()
function GrandChildA () // GrandChildA inherits ClassA
{}
Обычно на таком языке, как C ++, я бы с удовольствием объявил GrandChildA
прямо в файле 1. Я хотел бы знать, как это сделать в Javascript
Редактировать:
Если я создаю один файл, содержащий все четыре класса - в том же порядке, в котором они загружены, пример работает точно так, как ожидается:
http://jsfiddle.net/k2XKL/