我正在尝试使用Apps脚本比较Google文档中的两个日期。我的日期格式为m / d / yyyy h:mm:ss。我一直收到错误提示“无法在对象2/1/2013 9:42:46中找到函数getTime。”我的日期格式化方式有问题吗?我已经成功使用了这个格式为mm / dd / yyyy的日期,并且我不确定为什么添加时间戳会产生影响。任何帮助将不胜感激!
for (var i = 0; i < kValues.length; i++) { // repeat loop
if (kValues[i][0] == "") {var lastupdate = parseInt(new Date("1/1/1980 00:00:00").getTime()/day); } // if a date doesn't exist, throw it back in the past
if (kValues[i][0] != ""){
var lastupdate = parseInt(kValues[i][0].getTime()/day);} // if a date does exist, interpret it. Here's where I'm getting my error.
var statusDateChange = parseInt(statusDate[i][0].getTime()/day); // interpret a date from Sheet 2
var statusChange = changeStatus[i][0]; //find the new status
var currentStatus = status[i][0]; //find the old status
var currentOID = oid[i][0]; // set Order ID
var changeOID = statusOID[i][0]; // set Order ID in Sheet 2 to compare
Logger.log(lastupdate + "<=" + statusDateChange);
if (lastupdate <= statusDateChange && currentOID == changeOID && statusChange != currentStatus) {sheet.getRange(i + 2, 8, 1, 1).setValues(statusChange); // if the date in Sheet 1 is less than the date in Sheet 2 and the ID matches, change the status
}
}
答案 0 :(得分:2)
字符串末尾是否有一个点或者是错字? 2/1/2013 9:42:46.
这可能是个问题,您可以像这样测试:
Logger.log(new Date("2/1/2013 9:42:46."))
Logger.log(new Date("2/1/2013 9:42:46"))
返回
Wed Dec 31 16:00:00 PST 1969
Fri Feb 01 00:42:46 PST 2013
第一个值等于Logger.log(new Date(null))
并返回JS引用日期。