Javascript 谷歌应用程序脚本如果语句出错
所以,我目前正在尝试检查我的Google电子表格单元格中的日期是否与我从HTML文档中获取的日期匹配。以下是我使用的函数:Javascript 谷歌应用程序脚本如果语句出错,javascript,google-apps-script,Javascript,Google Apps Script,所以,我目前正在尝试检查我的Google电子表格单元格中的日期是否与我从HTML文档中获取的日期匹配。以下是我使用的函数: for (var i=0; i < data.length; i++) { var testDate = subDaysFromDate(data[i][0],1) var DateToCheck = Utilities.formatDate(testDate, "GMT", "dd-MM-yyyy"); var DateToCheckBefor
for (var i=0; i < data.length; i++) {
var testDate = subDaysFromDate(data[i][0],1)
var DateToCheck = Utilities.formatDate(testDate, "GMT", "dd-MM-yyyy");
var DateToCheckBefore = DateToCheck.split("-");
var DateToCheckAfter = new Date(DateToCheckBefore[2], DateToCheckBefore[1]-1, DateToCheckBefore[0]); //dit is de datum van een row
var d1 = $d1.split("-");
var d2 = $d2.split("-");
var from = new Date(d1[0], d1[1]-1, d1[2]); // -1 because months are from 0 to 11
var to = new Date(d2[0], d2[1]-1, d2[2]);
if(DateToCheckAfter >= from && DateToCheckAfter <= to){
var dataCheck = sheet.getRange("T2").getValue();
if(DateToCheckAfter == dataCheck){
Browser.msgBox('9 march?!', Browser.Buttons.OK);
}
Logger.log(dataCheck);
Logger.log(DateToCheckAfter);
}
}
当我记录变量时,记录器显示:
[15-03-18 14:06:33:227 CET] Mon Mar 09 00:00:00 GMT+01:00 2015
[15-03-18 14:06:33:228 CET] Mon Mar 09 00:00:00 GMT+01:00 2015
那么为什么我的if语句不起作用呢?答案很简单 DateToCheckAfter是一个日期对象,dataCheck是一个字符串
if(DateToCheckAfter.toString() == dataCheck)
{
Browser.msgBox('9 march?!', Browser.Buttons.OK);
}
修复了它例如:var date1=new Date();var date2=新日期(date1);date1==date2为false。如果执行date1.getTime()==date2.getTime(),则得到true。不需要转换为字符串,然后再转换为日期。227!=这是其中的一部分
if(DateToCheckAfter.toString() == dataCheck)
{
Browser.msgBox('9 march?!', Browser.Buttons.OK);
}