Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Mengira Perbezaan Bulan dalam JavaScript?

Bagaimana untuk Mengira Perbezaan Bulan dalam JavaScript?

DDD
DDDasal
2024-11-04 13:36:11608semak imbas

How to Calculate Month Differences in JavaScript?

Mengira Perbezaan Bulan dalam JavaScript

Menentukan perbezaan bulan antara dua objek JavaScript Date() boleh menjadi samar-samar. Walau bagaimanapun, dengan memanipulasi komponen tahun, bulan dan hari bagi objek ini, seseorang boleh mengira pelbagai tafsiran perbezaan bulan.

Sebagai contoh, pertimbangkan fungsi berikut yang mengira bilangan bulan antara dua tarikh :

function monthDiff(d1, d2) {
    var months = (d2.getFullYear() - d1.getFullYear()) * 12;
    months -= d1.getMonth();
    months += d2.getMonth();
    return months <= 0 ? 0 : months;
}

Dalam fungsi ini, bilangan tahun dan bulan antara dua tarikh ditentukan. Nilai yang terhasil diubah suai mengikut bulan masing-masing dalam setiap tahun, memastikan ketepatan. Jika perbezaan adalah negatif atau sifar, nilai ditetapkan kepada sifar.

Untuk menunjukkan kefungsian fungsi ini, pertimbangkan contoh berikut:

// November 4th, 2008, to March 12th, 2010
console.log(monthDiff(new Date(2008, 10, 4), new Date(2010, 2, 12))); // Output: 16

// January 1st, 2010, to March 12th, 2010
console.log(monthDiff(new Date(2010, 0, 1), new Date(2010, 2, 12))); // Output: 2

// February 1st, 2010, to March 12th, 2010
console.log(monthDiff(new Date(2010, 1, 1), new Date(2010, 2, 12))); // Output: 1

Hasil ini menggambarkan kepelbagaian fungsi berfungsi dalam mengendalikan pelbagai perbandingan tarikh.

Atas ialah kandungan terperinci Bagaimana untuk Mengira Perbezaan Bulan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn