如何正确格式化应用脚本检索的日期值

How To Properly Format A Date Value That Is Retrieved by App Script

无论我尝试什么,我都无法获取应用程序脚本 return 从另一个单元格检索到的现有日期。

在下面的脚本中,mDate(L2 的实际值)和 dateString 都会导致 return 值为 'Sat Dec 30 1899',我将其理解为 GS 的开始日期。

我尝试创建一个新的日期对象,, 例如:

 var formatmDate = Utilities.formatDate(mDate.getValue(), "GMT", mDate.getNumberFormat());

正在检索的当前实际日期值是“09/20/2021”(更可取的是 'Mon Sep 20 2021',但根据我的阅读,这可能会有问题?)。

如能提供任何帮助,我们将不胜感激。

函数如下:

function gammaTilt() {
  var ss = SpreadsheetApp.openById(SpreadsheetID);
  var sheet = ss.getSheetByName(SheetName);
  var gt = sheet.getRange("M2").getValue();
  var nextRow = getFirstEmptyRow('N');
  var mDate = sheet.getRange("L2");
  var dateString = mDate.getDisplayValues();

  sheet.getRange(nextRow, 14, 1, 2).setValue([gt,dateString]);
};

// From 
function getFirstEmptyRow(columnLetter) {
  columnLetter = columnLetter || 'N';
  var rangeN1 = columnLetter + ':' + columnLetter;
  var spr = SpreadsheetApp.getActiveSpreadsheet();
  var column = spr.getRange(rangeN1);
  var values = column.getValues(); // get all data in one call
  var ct = 0;
  while ( values[ct][0] != "" ) {
    ct++;
  }
  return (ct+1); // +1 for compatibility with spreadsheet functions
}
function getmydate() {
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheetByName('Sheet0');
  const dt = Utilities.formatDate(new Date(sh.getRange('A1').getValue()),ss.getSpreadsheetTimeZone(),"E MMM dd yyyy");
  sh.getRange('A2').setValue(dt);
}

工作表 0:

A
09/20/2021
Mon Sep 20 2021