gpt4 book ai didi

javascript - 我怎样才能得到显示 "yesterday"而不是 "a day ago"的时刻?

转载 作者:行者123 更新时间:2023-11-29 10:02:29 25 4
gpt4 key购买 nike

我有下面的代码,用来求两个日期之间的人性化时差,问题是我不想有'一天前',而是显示'昨天'。

function humanize(date) {
const then = moment.utc(date);

return then.fromNow();
}

function getYesterdayAsISO() {
var date = new Date();
date.setDate(date.getDate()-1);
return date.toISOString();
}

console.log(humanize(getYesterdayAsISO()));
<script src="https://momentjs.com/downloads/moment-with-locales.min.js"></script>

最佳答案

这些可以在翻译文件中找到。您可以在 relativeTime in en-gb.js at Line 42 中更改它们:

d : 'yesterday',

但这仍然显示为昨天。您可以更改的正确的是过去

past : '%s ago',

此外,在不更改源代码的情况下,我通过注入(inject)添加了以下内容:

moment.updateLocale('en-gb', {
relativeTime: {
past : '%s',
d : 'yesterday'
}
});

以上可能不适用于所有情况,它应该专门用于您当前的项目。

我在控制台中得到以下信息:

enter image description here

工作示例

moment.updateLocale('en-gb', {
relativeTime: {
past : '%s',
d : 'yesterday'
}
});

function humanize(date) {
const then = moment.utc(date);

return then.fromNow();
}

function getYesterdayAsISO() {
var date = new Date();
date.setDate(date.getDate()-1);
return date.toISOString();
}

console.log(humanize(getYesterdayAsISO()));
<script src="https://momentjs.com/downloads/moment-with-locales.min.js"></script>

关于javascript - 我怎样才能得到显示 "yesterday"而不是 "a day ago"的时刻?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52664408/

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