Из предыдущего вопроса у меня есть следующее:
Итак, я реализовал класс ресурсов, теперь я хотел бы продолжить его расширение и добавить все свои константы и перечисления (или насколько позволит JS ...).
Это то, что у меня сейчас есть:
var resources = {
// images
player : new c_resource("res/player.png"),
enemies : new c_resource("res/enemies.png"),
tilemap : new c_resource("res/tilemap.png")
};
И это то, что я хотел бы продолжить расширять до:
var resources = {
// images
player : new c_resource("res/player.png"),
enemies : new c_resource("res/enemies.png"),
tilemap : new c_resource("res/tilemap.png"),
// enums
directions : {up:0, right:1, down:2, left:3},
speeds : {slow: 1, medium: 3, fast: 5}
};
...
function enemies() {
this.dir = resources.directions.down; // initialize to down
}
Когда я пытаюсь получить доступ к resources.directions.up, мой JS-скрипт падает в пылающую кучу горящего кода.Разрешены ли перечисления в этом контексте, и если нет, как я могу правильно вставить их для использования вне обычной функции?Я также пытался определить их как глобальные с похожим эффектом.
правки: исправил запятую ... это была просто ошибка при расшифровке.
Когда я запустил его вFirefox и наблюдая за консолью, я получаю сообщение об ошибке: resources is undefined
.
«Класс» ресурсов определен в верхней части моего скрипта, и function enemies()
непосредственно следует ... так что из того, что я понимаюэто все еще должно быть в области видимости ...