30 января и 1 февраля, похоже, на високосные годы.Сравнение двух дат не влияет (влияние високосного года)
new Date(1972, 01, 30).getTime() == new Date(1972, 02, 01).getTime(); // true
30 января и 2 февраля, кажется, равных по невисокосных лет.
new Date(1973, 01, 30).getTime() == new Date(1973, 02, 02).getTime(); // true
1 февраля и 2 февраля, кажется, работает каждый раз.
new Date(1973, 02, 01).getTime() == new Date(1973, 02, 02).getTime(); // false new Date(1972, 02, 01).getTime() == new Date(1972, 02, 02).getTime(); // false
Looping более 19 лет: https://jsfiddle.net/rd1qe9bt/3/
Почему это работает, как это и я могу как-то дифференцировать эти даты?
Вы проверили 'console.log (новая дата (1972, 01, 30))' и 'console.log (новая дата (1972, 02, 01))'? –