hasOwnProperty
Добрый день!
Получаю массив с сервера.У меня идет фильтрация,поэтому иногда массив имеет дополнительное вложение(массив),а иногда нет. Я пытаюсь это проверить так if(data[i][0][0].hasOwnProperty('Loan')) { } перебираю вот так for (var i in data) {} Когда есть дополнительный массив,все отлично срабатывает,но когда его нету,то соответственно нету и ключей [0][0] и выходит ошибка main.js:346 Uncaught TypeError: Cannot read property 'hasOwnProperty' of undefined at Object.success (main.js:346) Как мне избавиться этой ошибки.Мне нужна функция,которая будет возвращать false или true.Спасибо. |
function checkData(data){ var i = 0; if( data[i].length && data[i][0].length && data[i][0][0].hasOwnProperty('Loan') ){ alert('Loan: ' + data[i][0][0].Loan); } else { alert('--No array--'); } } var d=[0, 1, 2]; checkData(d); d[0] = [0, 1]; checkData(d); d[0][0] = [0]; checkData(d); d[0][0][0] = {'Loan': 'Ok'}; checkData(d); |
Часовой пояс GMT +3, время: 02:09. |