【问题标题】:Different Timestamp captured in Google Form and App ScriptGoogle Form 和 App Script 中捕获的不同时间戳
【发布时间】:2018-02-02 09:55:13
【问题描述】:

我有一个用例,我需要获取表单响应的时间戳(并将其字符串化)并通过电子邮件发送给受访者。

这是我的代码,我想确保它与我的工作表中的时间戳完全相同

代码

Logger.log("e.response.getTimestamp()" + e.response.getTimestamp()) ;

受访者的屏幕截图(抱歉无法发布图片) Screenshot of the respondent

问题 - 时间怎么会相差 1 秒? - 我怎么能把它串起来(在表单和应用程序字符串中)所以我可以得到相同的结果

【问题讨论】:

  • 你在日志中得到了什么?
  • 舍入问题? Google 表格公式栏中显示的值是什么?正如 Umair 所说,你在日志中得到了什么?
  • 为避免四舍五入,请尝试改用 valueOf() 或 getTime()。
  • @Umair,这里是日志[18-02-02 17:15:07:287 HKT] Logger.log([e.response.getTimestamp().toISOString() 2018-02-02T09 :15:05.933Z, []]) [0 秒] [18-02-02 17:15:07:288 HKT] Logger.log([e.response.getTimestamp() Fri Feb 02 2018 17:15:05 GMT+0800 (HKT), []]) [0 seconds] 和 Cooper,这不是一个四舍五入的问题,对我来说是新事物,因为我认为时区唯一不同的是 HOUR 字段,但幸运的是,我能够创建自定义 JS func in sheet,将Timestamp转换为ISO时间,使提交时间(表单)和sheet时间一致。由于字符限制将在下一条评论中发布
  • 这里是实际的工作表,它显示了不同时区的秒数确实不同。但我真正需要的是在表单提交和表单中获得相同的字符串。感谢上帝,我终于有了它! link

标签: google-apps-script google-sheets google-forms


【解决方案1】:

问题在于 Google 表单使用毫秒在内部存储表单响应,但是在将时间戳写入 Google 表格时,时间戳会四舍五入到秒。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 1970-01-01
    • 1970-01-01
    • 2020-10-17
    • 1970-01-01
    • 1970-01-01
    • 2021-08-17
    相关资源
    最近更新 更多