jQuery.Отложенное исключение для фильтров

#jquery #filter

Вопрос:

Я хочу отфильтровать данные из объекта и присвоить эти значения. но присвоение значений должно начаться после завершения фильтрации.

jQuery.Отложенное исключение: Не удается прочитать свойство «имя» неопределенного типа Ошибка: Не удается прочитать свойство » имя » неопределенного типа

 var activitydata = function(allactivitiesObj) {
  allactivitiesObj.dataset = allactivitiesObj.dataset.map(function(mapdata) {
    var dataset2filter = dataset2.filter(function(data) {       
      return data.id === mapdata.id;      
    });          

    var dataset1filter = dataset1.filter(function(data) {        
      return data.id === mapdata.id;      
    });

    // before comes to this I need to make sure above filters are done. pls advice
    mapdata.dataset = dataset1filter[0].name;
    return mapdata;
  });
  return allactivitiesObj
}
 

activitydata() это вызовет внутренний метод инициализации.

Комментарии:

1. filter() Вызов выполняется синхронно, поэтому они всегда будут завершены до последней строки кода. Это похоже на вопрос XY — почему вы считаете, что это проблема?

2. @Рори Маккроссан иногда новый.dataset = dataset1filter[0].имя; вызывается перед фильтром.

3. Не могли бы вы отредактировать вопрос, чтобы включить фрагмент, который создает такое поведение. Без какого-либо асинхронного кода я не верю, что это возможно.

4. @RoryMcCrossan, можешь проверить сейчас

5. В чем заключается содержание allactivitiesObj ?