насколько я понимаю, что вы data
объект и внутри этого списка объектов matches
выглядит, что если нет совпадений, он возвращается как undefined
, а не как пустой массив []
, поэтому он выдает исключение. Невозможно прочитать длину свойства неопределенного
, поэтому вы должны вернуть пустой массив для отсутствия совпадений или проверить объект совпадений, прежде чем выполнять итерацию по списку следующим образом
if(!data.matches){
alert('no matches');
}
else{
alert('matches available');
$.each(data.matches, function() {
var match = this;
$contents += Mustache.render(container, this);
});
}