Я пытаюсь перебрать массив, назначенный переменной, но IDE, которую я использую, говорит мне, что переменная не определена. Я попытался решить проблему, используя console.log(variable_name.length)
, и он успешно возвращает длину массива, но он все еще говорит мне, что переменная не определена при попытке ее перебрать.
function availableActions(state, reward_matrix) {
var current_state_row = reward_matrix[state];
console.log(current_state_row.length);
let av_act = [];
for (var i = 0; i < current_state_row.length; i++) {
if (current_state_row[i] != 0) {
av_act.push(i);
}
}
return av_act;
}
После попытки чтобы запустить скрипт, я получаю следующую ошибку:
TypeError: current_state_row is Undefined
В этом примере программа возвращает undefined
среди серии массивов. Я считаю, что именно это и является причиной ошибки.
MRE
function getRand(min, max) {
let rand = Math.random();
let number = rand * (max - min) + min;
number = Math.round(number);
return number;
}
let total = 0;
let grid = new Array(100)
for(var i = 0; i <100; i++){
grid[i] = []
for(var j = 0; j < 10; j++){
grid[i].push(0)
total++
}
}
for (var i = 0; i < 200; i++) {
let x = getRand(0, grid.length);
console.log(grid[x]);
}