Обучение JS по игре.и, конечно, простой список - это кликер :-) ОК, так что я очень помог с этим, но секция массива просто не тонет. Массивы JS не работают как массивы, к которым я привык.вопрос из двух частей: 1. Почему следующий код продолжает говорить weaponlevelIfo[0]
undefined, когда он определен?Пожалуйста, объясните свой ответ, не просто исправьте мой LOL 2. Мне интереснее заполнять код во время выполнения
Как уже говорилось, все исследования, с которыми я сталкиваюсь, а также видео, рассказывают о статических данных,то есть он вставляется на уровне программирования, а не во время выполнения.
У меня был действительно терпеливый человек из сообщества, который пытался помочь мне понять массивы JS, но я должен быть слепым, поскольку не вижу его.Я могу сделать на другом языке просто отлично.но JS?Нет.
// produces weaponLevelNfo[weaponId][level][cost] and [goldperclick]
// weapon, level 1-9, cost/goldperclick on each level
var weaponLevelNfo = new Array(14); // Outter array comprised of weapons 0-14
function initGame() {
for (let i=0; i <= weaponLevelNfo.length; i++) {
weaponLevelNfo[i] = new Array(9); // create leves array under weaponid array
for (let j = 0; j < weaponLevelNfo[i].length; j++) {
// loop through each 9 levels changing as needed
weaponLevelNfo[i][j] = new Array(2); // create an object for readability
}
}
}
initGame();// added - forgot to add this in the original post (sorry)
weaponLevelNfo[0][0][2]=3;
console.log(weaponLevelNfo[0][0][2]);
// always gives me weaponLevelNfo[0] not defined
Я предпочитаю, чтобы результаты были такими:
weaponLevelNfo[x][y].cost,
weaponLevelNfo[x][y].incomePerClick,
, но я вполне доволен
weaponLevelNfo[x][y][z],
weaponLevelNfo[x][y][z],
Но, как вы можете видеть из кода, назначая их напрямую или во время выполнения, я получаю неопределенную ошибку
Чего не хватает, чтобы позволить мне назначить их во время выполнения?