Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.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_Datetime_Google Apps Script - Fatal编程技术网

Javascript 获取要显示为纯文本的日期对象

Javascript 获取要显示为纯文本的日期对象,javascript,datetime,google-apps-script,Javascript,Datetime,Google Apps Script,我目前有一个工作代码,可以记录今天的日期,如果那个学生缺席,可以将其粘贴到一个单元格中。如果该学生另一天缺席,则代码会在同一单元格中追加另一个日期。第一次约会一切都很顺利。它显示为: 09/21 但当我第二天再次运行它时,它显示: 2020年9月21日星期一01:00:00 GMT-0400(东部夏时制);09/22 它应该说: 09/21;09/22 以下是代码的相关部分: var ss=SpreadsheetApp.getActive(); var sheet=ss.getActiveShe

我目前有一个工作代码,可以记录今天的日期,如果那个学生缺席,可以将其粘贴到一个单元格中。如果该学生另一天缺席,则代码会在同一单元格中追加另一个日期。第一次约会一切都很顺利。它显示为:

09/21

但当我第二天再次运行它时,它显示:

2020年9月21日星期一01:00:00 GMT-0400(东部夏时制);09/22

它应该说:

09/21;09/22

以下是代码的相关部分:

var ss=SpreadsheetApp.getActive();
var sheet=ss.getActiveSheet();
var emailCol=getColNum(“学生电子邮件”)
var absentCol=getColNum(“缺席”);
var tardyCol=getColNum(“延迟”);
var timezone=SpreadsheetApp.getActive().getSpreadsheetTimeZone();
var date=Utilities.formatDate(新日期(),时区,“MM/dd”)
如果(saveAb==“是”){
对于(i=0;i<40;i++){
var stuEmail=tAtt.getRange(2+i,30).getValue();
var stuRow=getRowNum(stuEmail,emailCol);
var stuAbData=sheet.getRange(stuRow,absentCol).getValue();
Logger.log(stuAbData);
var abToDisplay=日期
如果(stuAbData==“”){
var stringToDisplay=abToDisplay
}否则{
var stringToDisplay=stuAbData+“;”+abToDisplay;
}
sheet.getRange(stuRow,absentCol).setValue(stringToDisplay);
}
}
如果(saveAb==“是”| | saveTa==“是”){
ss.toast(“节省出席人数”);
}
}
有没有办法让它以纯文本形式输出stuAbData变量,或者阻止if重新格式化?我尝试过几种方法,比如在.setValue字段中使用这个变量。不起作用

var newTest=Utilities.formatDate(stuAbData,时区,“MM/dd”)

改用

谷歌的问题是,它将解释它,并将它返回给你作为一个整体。只有在第二次运行时,当值为“09/21”时,才会出现问题,因为这会被解释为一个日期。

请改用

谷歌的问题是,它将解释它,并将它返回给你作为一个整体。只有在第二次运行时,当值为“09/21”时,才会出现问题,因为这将被解释为一个日期

var stuAbData = sheet.getRange(stuRow, absentCol).getDisplayValue();