javascript(google 应用程序脚本)声明变量

javascript (google apps script) declaring variables

我写了一个代码。对于 运行 我已经声明了很多变量的代码。现在我完成了,我意识到我不必声明变量,因为我可以直接在函数中调用变量应该调用的内容。

示例:

function test() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var date = Utilities.formatDate(new Date(), "GMT", "dd-MMM-yyyy");
  sheet.appendRow(date);
}

我可能没有声明日期并写下这个:

function test() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  sheet.appendRow(Utilities.formatDate(new Date(), "GMT", "dd-MMM-yyyy"));
}

哪些被认为是最佳做法并且对应用程序的性能更好?

谢谢

对性能的影响可以忽略不计。您应该以最易读的方式编写它。在您的情况下,这是有争议的,但我喜欢声明 date 变量,因为它使后续行更短且不那么难以抗拒。

如果您在多个位置使用日期,则可能会影响性能。然后,您可能想要声明一个变量。例如...

function test() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  sheet.appendRow(Utilities.formatDate(new Date(), "GMT", "dd-MMM-yyyy"));
  somethingElse(Utilities.formatDate(new Date(), "GMT", "dd-MMM-yyyy"));
}

除了违反 DRY principle 之外,上述内容还会影响性能,因为您正在执行两次工作(创建 Date 对象并对其进行格式化)。

总而言之,如果您只使用一次值,则不需要将其设为变量,但如果它提高了可读性,您应该这样做。