Я делаю вызов ajax (JavaScript), который с помощью функции show info генерирует данные, которые я получаю. Моя проблема заключается в следующем: на одном из массивов некоторые данные не имеют его, их немного, но все же есть. Таким образом, он отображает первые элементы, но останавливается, когда не может получить указанный массив и вернуть:
Uncaught TypeError: info ["xxxx"] не определено.
Что мне действительно нужно, так это сделать так, чтобы он по-прежнему извлекал / отображал данные и говорил что-то вроде «эти данные. [Деноминация] [0] .title is undefined или что-то еще».
Я пытался использовать дополнительный оператор цепочки '?.' но я совершенно не понимаю, как это работает.
Вот что меня сводит с ума: (это данные ["номинал"], которые все разрушают)
request.addEventListener('readystatechange', function(){
if (request.readyState === XMLHttpRequest.DONE && request.status === 200) {
const backCall=JSON.parse(request.responseText);
if(backCall.count != 0){
for(let data of backCall.datas){
showInfo(data.title, data["author"][0].name, data["denomination"][0].title, data["denomination"][0].id);
}
}else if(backCall.count === 0){
noResult();
}
}
});
(просто немного отредактировать, чтобы быть точным. Я искал перед рукой и даже посмотрел на рекомендованные темы от Stack, когда я писал это)