Saya mencoba menghitung usia seseorang menggunakan Moment.js , tapi saya menemukan bahwa metode fromNow yang berguna akan bertambah selama bertahun-tahun. Misalnya, jika hari ini 12/27/2012 dan tanggal lahir orang tersebut adalah 02/26/1978, moment("02/26/1978", "MM/DD/YYYY").fromNow()
mengembalikan '35 tahun yang lalu '. Bagaimana saya bisa membuat Moment.js mengabaikan jumlah bulan, dan hanya mengembalikan jumlah tahun (yaitu 34) sejak tanggal?
javascript
date
momentjs
aknuds1
sumber
sumber
Tampaknya ada fungsi perbedaan yang menerima interval waktu untuk digunakan serta opsi untuk tidak membulatkan hasil. Jadi, kira-kira seperti itu
Saya belum mencoba ini, dan saya tidak sepenuhnya akrab dengan momen, tetapi sepertinya ini harus mendapatkan apa yang Anda inginkan (tanpa harus mengatur ulang bulan).
sumber
age = moment().diff(birthDate, 'years')
.Saya menemukan bahwa itu akan berhasil untuk mengatur ulang bulan ke Januari untuk kedua tanggal (tanggal yang disediakan dan sekarang):
sumber
Metode ini mudah dan kuat.
Nilai adalah tanggal dan "DD-MM-YYYY" adalah topeng tanggal.
sumber
Coba ini:
Penjelasan:
Kami menerima string seperti ini: '23 hari yang lalu '. Bagi ke array: ['23', 'hari', 'lalu'] dan kemudian ambil item pertama '23'.
sumber
Metode ini bekerja untuk saya. Ini memeriksa apakah orang tersebut berulang tahun tahun ini dan mengurangi satu tahun sebaliknya.
Sunting: Versi pertama tidak cukup berfungsi. Yang diperbarui harus
sumber
cal 1752
untuk melihat alasannyaJika Anda tidak ingin menggunakan modul apa pun untuk perhitungan usia
sumber
Saat Anda ingin menampilkan tahun dan hari-hari yang tersisa:
sumber
Saya lebih suka metode kecil ini.
sumber