持续时间作为JSON输出中的时间戳

时间:2018-02-23 06:59:17

标签: json node.js

Api调用返回以下JSON对象:

{
    "status": "OK",
    "distance": "482 km",
    "duration": "8 hours 46 mins"
}

现在我需要将此“持续时间”转换为此格式的时间戳 - https://en.wikipedia.org/wiki/ISO_8601#Durations 怎么去呢?

1 个答案:

答案 0 :(得分:1)

您可以使用支持将日期转换为ISO 8601字符串的 Moment.js

您所要做的就是从字符串中提取小时和分钟。



let d = '8 hours 46 mins'.split(' ')
let result = moment.duration(`${d[0]}:${d[2]}`, 'H:M').toISOString()
console.log(result)

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script>
&#13;
&#13;
&#13;