У меня есть массив массивов, из которых я пытаюсь извлечь значения. Проблема в том, что я получаю неопределенную ошибку, когда она попадает в пустой массив.Работа с пустыми объектами в массиве javascript
Вот массив я работаю с:
data = [[Object { myvar=null}], [Object { myvar="testval"}], [], [], []]
Вот Javascript я использую, чтобы получить все значения MYVAR:
myarr = [];
for (var i = 0; i < data.length; i++) {
console.log(data[i][0].myvar);
if (data[i][0].myvar) {
dep = data[i][0].myvar;
if (dep != null) {
myarr.push(dep);
}
}
}
console.log выглядит следующим образом:
null
testval
Error: data[i][0] is undefined
Так оно ломается, когда оно достигает первого []. Как я могу удалить все пустые массивы перед циклом for? Или цикл for не умирает, когда он попадает в пустой массив? Любая помощь оценивается. Благодарю.
Можете ли вы показать код, который положил туда пустой массив? –
Третий элемент массива 'data' - пустой массив. Поэтому, когда вы достигнете 'i = 2' (который является третьим элементом),' data [i] 'пуст. Таким образом, нет данных 'data [i] [0] – matewka
, чтобы проверить мой ответ, он даже проверяет наличие пустых объектов и массивов, будучи коротким –