Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果日期相同,则运行函数_Javascript_Google Apps Script - Fatal编程技术网

Javascript 如果日期相同,则运行函数

Javascript 如果日期相同,则运行函数,javascript,google-apps-script,Javascript,Google Apps Script,我遇到一个问题,数组是否被填充。 电子表格中设置了正确的日期2017年9月29日 我想这是因为文本不匹配。代码见下文: 正在设置日期: // Format the date var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd/MM/yyyy"); var sendTheseEmail = []; var sendTheseName = []; var sendTheseLName = []; var sendTh

我遇到一个问题,数组是否被填充。 电子表格中设置了正确的日期
2017年9月29日
我想这是因为文本不匹配。代码见下文:

正在设置日期:

  // Format the date

var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd/MM/yyyy");

var sendTheseEmail = [];
var sendTheseName = [];
var sendTheseLName = [];
var sendTheseBackup = [];
var sendTheseAdvocate = [];


for (var i = 1; i < 20; i++) {
function findSend() {
  if(tsSheet.getRange("F" + i).getValue() == formattedDate){
   sendTheseEmail.push(tsSheet.getRange("D" + i).getValue())
   sendTheseName.push(tsSheet.getRange("A" + i).getValue())
   sendTheseLName.push(tsSheet.getRange("B" + i).getValue())
   sendTheseBackup.push(tsSheet.getRange("E" + i).getValue())
   sendTheseAdvocate.push(tsSheet.getRange("G" + i).getValue())
然后阵列记录:

[17-09-29 03:05:31:427 PDT] []
[17-09-29 03:05:31:427 PDT] []
[17-09-29 03:05:31:428 PDT] []
[17-09-29 03:05:31:428 PDT] []
[17-09-29 03:05:31:429 PDT] []

如果有人能帮忙那就太好了

是的,您需要精确匹配日期,因为这些日期是作为字符串计算的。

如果没有最小的可运行代码,很难回答,但是我想如果您想比较日期,那么只需使用
实用程序。formatDate
也可以格式化该单元格中的日期:

var formattedDate=Utilities.formattdate(新日期(),“GMT”,“dd/MM/yyyy”);
var sendTheseEmail=[];
var sendthesname=[];
var sendTheseLName=[];
var sendthesbackup=[];
var sendthesAdvocate=[];
对于(变量i=1;i<20;i++){
函数findSend(){
//比较前格式化单元格值
if(Utilities.formatDate(新日期(tsSheet.getRange(“F”+i).getValue()),“GMT”,“dd/MM/yyyy”)==formattedDate){
sendTheseEmail.push(tsSheet.getRange(“D”+i.getValue())
sendthesname.push(tsSheet.getRange(“A”+i.getValue())
sendtheseName.push(tsSheet.getRange(“B”+i.getValue())
sendthebackup.push(tsSheet.getRange(“E”+i.getValue())
sendtheAdvocate.push(tsSheet.getRange(“G”+i.getValue())
}
}

}
您能否发布格式化日期是如何设置的,以及为什么日期会在将来如此遥远?更新了我的问题谢谢,真正的问题是为什么spreadsheat值会转换为那些拙劣的日期。当电子表格加载到
tsSheet
中时,是否有任何解析?我得到的表格如下:var ss=SpreadsheetApp.getActiveSpreadsheet();var tsSheet=ss.getSheetByName(“Sheet1”);
[17-09-29 03:05:31:427 PDT] []
[17-09-29 03:05:31:427 PDT] []
[17-09-29 03:05:31:428 PDT] []
[17-09-29 03:05:31:428 PDT] []
[17-09-29 03:05:31:429 PDT] []