Відповідаючи на питання OP
A) Що я не розумію в тому, як працює консоль Google Apps Script щодо друку, щоб я міг перевірити, чи виконує мій код те, що я хотів би?
Код у .gs-файлах проекту Google Apps Script працює на сервері, а не у веб-браузері. Спосіб реєстрації повідомлень полягав у використанні реєстратора класів .
Б) Це проблема з кодом?
Як зазначалося в повідомленні про помилку, проблема полягала в тому, що console
не було визначено, але в наш час той самий код видасть іншу помилку:
ReferenceError: "playerArray" не визначено. (рядок 12, файл "Код")
Це тому, що playerArray визначається як локальна змінна. Переміщення рядка з функції це вирішить.
var playerArray = [];
function addplayerstoArray(numplayers) {
for (i=0; i<numplayers; i++) {
playerArray.push(i);
}
}
addplayerstoArray(7);
console.log(playerArray[3])
Тепер, коли код виконується без помилок, замість того, щоб подивитися на консоль браузера, ми повинні подивитися на журнал Stackdriver. У інтерфейсі редактора сценаріїв Google Apps натисніть Вигляд> Ведення журналу Stackdriver .
Додаток
У 2017 році Google випустив для всіх сценаріїв Stackdriver Logging і додав консоль класів, тому включення чогось подібного console.log('Hello world!')
не призведе до помилки, але журнал буде знаходитися в Google Cloud Platform Stackdriver Logging Service замість консолі браузера.
З приміток до випуску сценаріїв Google Apps 2017 року
23 червня 2017 р
Ведення журналу Stackdriver було вилучено з дочасного доступу. Усі сценарії тепер мають доступ до ведення журналу Stackdriver.
З журналювання> Ведення журналу Stackdriver
У наступному прикладі показано, як використовувати службу консолі для реєстрації інформації в Stackdriver.
function measuringExecutionTime() {
console.info('Timing the %s function (%d arguments)', 'myFunction', 1);
var parameters = {
isValid: true,
content: 'some string',
timestamp: new Date()
};
console.log({message: 'Function Input', initialData: parameters});
var label = 'myFunction() time';
console.time(label);
try {
myFunction(parameters);
} catch (e) {
console.error('myFunction() yielded an error: ' + e);
}
console.timeEnd(label);
}