В последние дни я столкнулся со странным поведением, вычисляющим разницу дат с помощью jquery datepicker, когда я пытаюсь выяснить разницу в днях двух дат, пересекающих 28 марта. Разница вместо того, чтобы возвращать целое число, как ожидалось, дает мне число с плавающей запятой, немного меньше ожидаемого целого числа.
Я имею в виду, что разница между 25th march
и 28th march
должна составлять 3
дня, но это дает мне 2.9583333333333335
дня.
Всякий раз, когда 28 марта находится в пределах диапазона, я получаю этот странный результат.
Думаю, это связано с изменением времени. С любым другим диапазоном эта проблема не срабатывает.
Я узнал, как решить эту проблему с помощью простой математики:
Math.floor((b-a)/(1000*60*60*24)+0.05);
Это изменение времени приводит к такому странному результату? Или это только мой код?
вот некоторый код (модификация средства выбора даты jquery пример), который показывает, что:
Спасибо