Memformat Masa Berlalu dalam Bahasa Semulajadi
Apabila memaparkan cap masa, ia boleh menjadi lebih mesra pengguna untuk menyatakan masa yang berlalu dalam bahasa semula jadi, seperti "4 minit lalu" dan bukannya "2023-03-08 14:05:03". Artikel ini menunjukkan cara memformat objek Tarikh JavaScript dalam cara yang ringkas dan boleh dibaca ini.
Fungsi yang disediakan, timeSince, mengira perbezaan antara tarikh semasa dan tarikh tertentu. Ia kemudian mengkategorikan masa berlalu kepada tahun, bulan, hari, jam, minit atau saat berdasarkan bilangan saat yang berlalu.
function timeSince(date) { var seconds = Math.floor((new Date() - date) / 1000); var interval = seconds / 31536000; if (interval > 1) { return Math.floor(interval) + " years"; } interval = seconds / 2592000; if (interval > 1) { return Math.floor(interval) + " months"; } interval = seconds / 86400; if (interval > 1) { return Math.floor(interval) + " days"; } interval = seconds / 3600; if (interval > 1) { return Math.floor(interval) + " hours"; } interval = seconds / 60; if (interval > 1) { return Math.floor(interval) + " minutes"; } return Math.floor(seconds) + " seconds"; }
Contohnya:
var aDay = 24 * 60 * 60 * 1000; console.log(timeSince(new Date(Date.now() - aDay))); // "1 day ago" console.log(timeSince(new Date(Date.now() - aDay * 2))); // "2 days ago"
Atas ialah kandungan terperinci Bagaimana untuk Memformat Masa Berlalu dalam Bahasa Semulajadi dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!