【问题标题】:How can I convert "Thu Jan 02 2020 17:24:12 GMT-0000 (GMT)" into a Google App Scripts DateTime object to do more manipulation?如何将“Thu Jan 02 2020 17:24:12 GMT-0000 (GMT)”转换为 Google App Scripts DateTime 对象以进行更多操作?
【发布时间】:2020-04-24 00:33:18
【问题描述】:

我从一个 API 中获取数据,该 API 为我提供了 Unix 纪元时间格式的时间戳。我将我从 API 收到的日期设置为“epochtimedate”。我用

转换
var date = Date(epochtimedate*1000);

当我用(第二个字段)将其写入 Google 表格时:

currentSheet.appendRow([nickname,date,globalrating,xp,damage_dealt,damage_received,battles,all_time_average_xp,last_game_xp_avg]);

Google 表格将该日期对象转换为字符串,例如Thu Jan 02 2020 17:24:12 GMT-0000 (GMT) - 如何在 Google Apps 脚本中转换回 DateTime 对象?

我将修改原始脚本以转换为 dd-MM-yyyyHH:mm:ss 以供将来获取 API,并且我将在修订后的工作表中的单独列中使用它们。我想返回并转换较早的字符串,以便可以根据日期和时间执行 Google 表格公式。

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    试试:

    var date = new Date(epochtimedate*1000);
    

    正如 RobG 在this discussion 中所说:

    Date() 返回一个依赖于实现的 string 表示 当前日期和时间。 new Date() 返回一个 Date object 表示当前日期和时间

    【讨论】:

    • 感谢 RobG,我很乐意更改原始行为以便将来不会发生这种情况,我有兴趣修复在现有 Google 表格中找到的日期字符串。我将从工作表中读取日期字符串,做一些聪明的事情将其解析回 DateTime 对象,然后按照我在 OP 中的描述将其写回。
    • 如果可以的话,出于文档目的,请接受对您有帮助的答案 (✓) - 它可以帮助将来遇到相同问题的其他人也找到解决方案 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-03
    • 2016-04-07
    • 2011-05-09
    • 2020-06-05
    • 1970-01-01
    相关资源
    最近更新 更多