JavaScript (скрипт приложений Google) объявляющий переменные - PullRequest
0 голосов
/ 26 апреля 2018

Я написал код. Для запуска кода я объявил довольно много переменных. Теперь, когда я закончил, я понял, что мне не нужно объявлять переменные, поскольку я могу вызывать то, что переменная должна вызывать непосредственно внутри функции.

Пример:

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"));
}

Что из этого считается лучшей практикой и лучше для производительности приложения?

Спасибо

1 Ответ

0 голосов
/ 26 апреля 2018

Влияние на производительность будет незначительным. Вы должны написать это так, чтобы это было наиболее читабельно В вашем случае это вопрос спорный, но мне нравится, объявляя 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 , вышеприведенное сказывается на производительности, потому что вы выполняете работу дважды (создание объекта Date и его форматирование).

Таким образом, если вы потребляете значение только один раз, вам не нужно делать его переменным, но вам следует это делать, если оно улучшает читабельность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...