Postman/JavaScript/API: 检查字符串是否包含日期并转换为时间戳

Postman/JavaScript/API: Check if string contains dates and convert into time stamp

我对 APIs 和 Postman 的话题完全陌生,有以下问题: 如何检测字符串中的多个日期并将它们重新格式化为时间戳?

我通过API拉取了一个JSON格式,然后通过JSON.stringify函数将其转换为字符串,然后存储在环境变量中。

现在看起来像这样:

[{“date”:“2000-01-01”,“value”:11.8432},{“date”:“2001-01-01”,“value”:112.2348},{“date”:“2002-01-01”,“value”:182.3777},{“date”:“2003-01-01”,“value”:15.0186},{“date”:“2004-01-01”,“value”:131.3781},{“date”:“2005-01-01”,“value”:145.3683}]

现在我正在尝试将此字符串恢复为 JSON 格式,但我想为日期添加 UNIX 时间戳(自 1970 年 1 月 1 日以来的毫秒数)。

所以它应该看起来像这样:

[{“date”:946684800000,“value”:11.8432},{“date”:978307200000,“value”:112.2348},{“date”:1009843200000,“value”:182.3777}…

有谁知道如何在 Postman 中解决这个问题(JavaScript for Postman)?

使用 moment 库和 valueOf() 方法:

moment = require('moment')

let date = [{ "date": "2000-01-01", "value": 11.8432 }, { "date": "2001-01-01", "value": 112.2348 }, { "date": "2002-01-01", "value": 182.3777 }, { "date": "2003-01-01", "value": 15.0186 }, { "date": "2004-01-01", "value": 131.3781 }, { "date": "2005-01-01", "value": 145.3683 }]


date = date.map((item) => {
    item.date = moment(item.date, "YYYY-MM-DD").valueOf()
    return item
    });

console.log(date)