Я хочу создать словарь, который можно обращаться как status[a][b]
где a
и b
случайные строки, которые не известны в момент инициализации.Ошибка: состояние [х] не определено
Вот точный случай использования:
status = {}
name = {};
time = {};
score = {};
for (i=0; i<$scope.submissions.length; i++)
{
e = $scope.submissions[i];
status[e.rno] = status[e.rno] || {};
time[e.rno] = time[e.rno] || 0;
score[e.rno] = score[e.rno] || 0;
status[e.rno][e.problem] = status[e.rno][e.problem] || 0;
if (e.score == 100 && status[e.rno][e.problem] == 0)
{
status[e.rno][e.problem] = 100;
time[e.rno] += e.id;
score[e.rno] += 100;
}
}
console.log(score["20161230"]);
Он бросает ошибку: Error: status[e.rno] is undefined
Я бы никогда не поймал это. благодаря! – anukul
@anukul Просто привыкните всегда использовать локальные переменные, если вам действительно не нужна глобальная переменная. – Barmar