React Native, Javascript: простая функция для возврата всех дат между двумя датами, дает разный результат на симуляторе и реальном устройстве

#javascript #ios #iphone #date #react-native

#javascript #iOS #iPhone #Дата #react-native

Вопрос:

У меня есть простая функция, когда возвращает все даты между двумя датами.

Смотрите код :

 events(s, e){
    let between = [];
    let currentDate = new Date(s);
    let end = new Date(e);
    while (currentDate <= end) {
      let dum = new Date(currentDate);
      let dummy = moment(dum).format('YYYY-MM-DD');
      between.push(dummy);
      currentDate.setDate(currentDate.getDate()   1);
    }
    return(between);
  }  

Я использую его в своем приложении react native. есть одна проблема, которая возникает только тогда, когда я указываю даты начала и окончания как 2016-10-22 и 2016-10-30.

В данном конкретном случае, когда я запускаю его в симуляторе iOS, длина возвращаемого массива равна 9. массив включает дату начала и дату окончания и все промежуточные даты.

Я запускаю точно такое же приложение, точно такую же функцию и параметры, приложение в iPhone возвращает разные результаты (только в этом конкретном случае, когда даты начала и окончания 2016-10-22 и 2016-10-30)

В iPhone длина массива равна 8, и она не включает последнюю дату.

Есть ли какая-либо логическая проблема в моей функции?

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

1. Почему вы не используете momentjs для всех операций с датами?

2. позвольте мне попробовать. Спасибо за ваш комментарий.