Есть ли способ перебрать даты в массиве и добавить их в этот объект?

#javascript #jquery #arrays #iterator

Вопрос:

Я использую календарь jQuery, который нашел в Интернете, и изо всех сил пытаюсь добавить в него даты. Я могу перебирать ответы API и отправлять их в массив. Но с этого момента я изо всех сил пытаюсь добавить его в календарь.

 $(function(){  $("#calendar").simpleCalendar();  });   var dates = [];  var descriptions = [];   for(i = 0; i lt; result['data']['holidays'].length; i  ){  let date = result['data']['holidays'][i]['date']['iso'];  dates.push(new Date(date));  descriptions.push(result['data']['holidays'][i]['description']);  }   console.log(dates[34]   " "   descriptions[34]);    $("#calendar").simpleCalendar({   // Events displayed  displayEvent:true,  // Dates of the events   events: [   {  startDate: dates[1],  endDate: dates[1],  summary: descriptions[1]  }  ]  });   

Я попытался добавить его в цикл и поместить ключ массива как «я», но это не сработало для меня.

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

1. Пожалуйста, опубликуйте пример данных API.

2. что бы console.log(result) тебе это дало?

3. Я не думаю , что у вас должен быть первый $(function(){ $("#calendar").simpleCalendar(); }); , вы также должны инициализировать его позже

Ответ №1:

Заполните переменную события внутри цикла и используйте ее непосредственно в json.

 $(function(){  $("#calendar").simpleCalendar();  });   var eventsArr = [];   for(i = 0; i lt; result['data']['holidays'].length; i  ){  let date = result['data']['holidays'][i]['date']['iso'];  eventsArr.push({  "startDate": new Date(date),  "endDate" : new Date(date),  "summary" : result['data']['holidays'][i]['description']  });  }   $("#calendar").simpleCalendar({   // Events displayed  displayEvent:true,  // Dates of the events   events: eventsArr  });