gpt4 book ai didi

node.js - 如何格式化以年和月为单位的持续时间?

转载 作者:太空宇宙 更新时间:2023-11-03 22:18:27 26 4
gpt4 key购买 nike

我正在使用node.js w/moment.js用于格式化时间。我想要以月和年的形式显示患者的年龄。这是我到目前为止所得到的:

patient: {
...
birthDate: moment('Dec 15, 2009'),
getAgeString: function() {
var age = moment.duration(moment() - this.birthDate);
return util.format('%d years, %d months', age.years(), age.months());
}
}

getAgeString 函数返回 3 年零 1 个月,这与我想要的非常接近,只是我希望它能够正确地复数形式。据我所知, moment 没有提供适当的复数形式的持续时间。

this.birthDate.fromNow(true) 很“智能”,但它似乎没有提供任何关于显示内容的自定义选项。

我可以让 moment.js 来做我想做的事情吗?或者是否有更好的 Node 时间库?

<小时/>

现在必须这样做:

getAgeString: function() {
var age = moment.duration(moment() - this.birthDate);
var years = age.years(), months = age.months();
return util.format('%d year%s, %d month%s', years, years === 1 ? '' : 's', months, months === 1 ? '' : 's');
}

最佳答案

您要正确复数的单词在您自己的代码中似乎是字符串文字,而不是基于格式化模块。您可以执行条件age.years()或age.months()等于1。如果是,则使用字符串“年”或“月”,否则使用“年”或“月”。

关于node.js - 如何格式化以年和月为单位的持续时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14351312/

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