gpt4 book ai didi

javascript - Discord 如何格式化今天和昨天的日期?

转载 作者:行者123 更新时间:2023-12-04 08:17:41 26 4
gpt4 key购买 nike

我目前正在研究基于网站不和谐的东西,我希望能够整合他们的日期格式。
我在说什么?
我正在谈论这个:UserOne Yesterday at 17:03UserTwo Today at 13:06例子:
enter image description here

最佳答案

你可以在下面找到一个快速而肮脏的解决方案,尽管我可能会使用 date-fns 为了这。逻辑也一样。检查这一天是今天还是昨天。如果是,打印单词和时间。如果不是,则只打印日期:

function isSameDay(date1, date2) {
return (date1.getDate() === date2.getDate() &&
date1.getMonth() === date2.getMonth() &&
date1.getFullYear() === date2.getFullYear())
}

function formatDate(d) {
const today = new Date()
const yesterday = new Date(today)
yesterday.setDate(yesterday.getDate() - 1)
const timeOptions = {
hour: '2-digit',
minute: '2-digit'
}

if (isSameDay(d, today)) {
// it's today
return `Today at ${d.toLocaleTimeString(undefined, timeOptions)}`
}

if (isSameDay(d, yesterday)) {
// it was yesterday
return `Yesterday at ${d.toLocaleTimeString(undefined, timeOptions)}`
}

return d.toLocaleDateString()
}

// examples
console.log({
'Now': formatDate(new Date()),
// geez, this yesterday date is ugly :D
'Yesterday': formatDate(new Date(new Date().setDate(new Date().getDate() - 1))),
'On the 5th of January': formatDate(new Date('2021-01-05 11:54'))
})

date-fns :
const format = require('date-fns/format');
const isToday = require('date-fns/isToday');
const isYesterday = require('date-fns/isYesterday');

function formatDate(d) {
if (isToday(d)) {
return `Today at ${format(d, 'kk:mm')}`;
}

if (isYesterday(d)) {
return `Yesterday at ${format(d, 'kk:mm')}`;
}

return format(d, 'dd/MM/yyyy');
}

关于javascript - Discord 如何格式化今天和昨天的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65643138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com