首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >8601在Javascript中将ISO字符串转换为可读的日期格式

问8601在Javascript中将ISO字符串转换为可读的日期格式
EN

Stack Overflow用户
提问于 2016-01-14 02:30:03
回答 2查看 286关注 0票数 0

我在尝试将8601转换成可读格式时遇到了相当糟糕的情况。日期显示为'P0DT0H0M10S‘,并存储在一个名为timeLeft的变量中。我在网上找到的每一篇文章都告诉我如何将日期转换为8601格式,但不是反过来。

我尝试使用moment.js,但它似乎是围绕当前日期,而不是由我的timeLeft变量设置的日期。如何将此var转换为用户友好的格式?谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-01-14 03:01:48

Moment有一个duration type

​

代码语言:javascript
复制
var duration = moment.duration('P1Y2M3DT4H5M6S');
// user-friendly format
var out = duration.humanize();

snippet.log(out);
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.1/moment.min.js"></script>
<script src="https://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>

​

票数 1
EN

Stack Overflow用户

发布于 2016-01-14 02:35:05

首先,这不是一个ISO-8601 date (甚至不是很接近)。

其次,使用moment("20111031", "YYYYMMDD")语法(从他们的front page examples中)将一个字符串momentjs does support parsing成一个时刻。

我不确定您需要的模式是什么,但可能是像[P]D[DT]H[H]M[M]S[S]这样的模式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34774354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档