datetime - 将今天的日期插入电子表格的脚本是错误的
问题描述
我正在为客户编写有界电子表格脚本,电子表格归他们所有。除其他许多事情外,脚本应该将今天的日期插入到 Google 表格电子表格单元格中。问题是插入的日期是错误的并且总是相同的。
我制作了电子表格的副本以尝试调试我的代码/找出错误的设置,但我无法重现问题,例如查看和使用电子表格和脚本项目时区设置。
这是插入今天日期的“最小”代码
function customToday(){
var now = new Date();
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getSheets()[0];
var range = sheet.getRange('A1');
range.setValue(now.getFullYear(),now.getMonth(),now.getDay())
}
用其他值替换now.getDay()
不会改变结果。
解决方案
我终于查看了原始电子表格设置。区域设置为空白,时区设置为太平洋时间,而不是电子表格所有者的默认时区。
在我看来,区域和时区设置以某种方式被破坏了。将区域设置更改为客户端默认国家和时区解决了该问题。
推荐阅读
- ios - 为什么在 Swift 中使用来自 Firestore 的侦听器获取数据时仍然会删除文档?
- wordpress - 选项页面中的 ACF 中继器字段(木材)
- spring-mvc - 将多个对象绑定到 JSP form:form 标记中
- ios - 我正在尝试通过 WCF 服务从 sql server 获取数据
- python - 检查方法是否是元类中的静态方法
- r - 从现有的 ggplot 图表中删除几何图形?
- bash - wget 从 virustotal 中检索搜索结果
- jquery - jQuery如何创建循环以避免重复
- php - Wordpress 中的自定义字段 AFC
- javascript - 使用 HtmlUnit 抓取移动网站