pro*_*ogx 2 javascript date momentjs date-fns
我一直在尝试使用date-fns格式化日期,但我一直失败。基本上我让它在 momentJS 上工作得很好,但在 date-fns 上却没有:
这是我的约会:
"10-13-20" // month, day, and year
Run Code Online (Sandbox Code Playgroud)
现在使用 momentJS,它可以像这样正常工作:
let result = moment("10-13-20", 'MM-DD-YY').format()
// result = "2020-10-13T00:00:00-06:00"
Run Code Online (Sandbox Code Playgroud)
所以我试图使用date-fns做同样的事情,但没有运气。任何人都可以指出我正确的方向吗?提前致谢!
let result = format(new Date("10-13-20"), 'MM-DD-YY') // Not working
Run Code Online (Sandbox Code Playgroud)
adR*_*adR 13
const date = "2021-12-20"
console.log(format(parseISO(date), "dd-MM-yyyy"));
// output: 20-12-2021
Run Code Online (Sandbox Code Playgroud)
如您所见,使用moment
lib,我们需要 2 个步骤才能得到结果:将字符串解析为Date
对象,然后将日期对象格式化为字符串。
您的代码 -format(new Date("10-13-20"), 'MM-DD-YY')
是format
步骤,尝试将日期对象转换为格式模板为 的字符串MM-DD-YY
。但是您的日期对象不正确。
解决方案是用moment
lib做同样的事情:
将日期字符串解析为日期对象。使用解析
const dateString = '10-13-20';
const date = parse(dateString, 'MM-dd-yy', new Date()) // not MM-DD-YY
Run Code Online (Sandbox Code Playgroud)
将日期对象格式化为结果字符串。使用格式
const result = format(date, "yyyy-MM-dd'T'HH:mm:ss.SSSxxx")
console.log(result)
Run Code Online (Sandbox Code Playgroud)
结果将类似于(与我的时区中的时刻结果相同):
2020-10-13T00:00:00.000+09:00
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9987 次 |
最近记录: |