Répondre aux questions du PO
A) Qu'est-ce que je ne comprends pas sur le fonctionnement de la console Google Apps Script en ce qui concerne l'impression afin que je puisse voir si mon code accomplit ce que je souhaite?
Le code sur les fichiers .gs d'un projet Google Apps Script s'exécute sur le serveur plutôt que sur le navigateur Web. La façon de consigner les messages était d'utiliser le Class Logger .
B) Est-ce un problème avec le code?
Comme le message d'erreur l'indique, le problème était que ce console
n'était pas défini mais de nos jours, le même code générera une autre erreur:
ReferenceError: "playerArray" n'est pas défini. (ligne 12, fichier "Code")
C'est parce que le playerArray est défini comme une variable locale. Sortir la ligne de la fonction résoudra ce problème.
var playerArray = [];
function addplayerstoArray(numplayers) {
for (i=0; i<numplayers; i++) {
playerArray.push(i);
}
}
addplayerstoArray(7);
console.log(playerArray[3])
Maintenant que le code s'exécute sans générer d'erreurs, au lieu de regarder la console du navigateur, nous devrions regarder Stackdriver Logging. Dans l'interface utilisateur de l'éditeur de scripts Google Apps, cliquez sur Afficher> Stackdriver Logging .
Addenda
En 2017, Google a publié tous les scripts Stackdriver Logging et ajouté la console de classe console.log('Hello world!')
.
À partir des notes de publication de Google Apps Script 2017
23 juin 2017
Stackdriver Logging a été déplacé de l'accès anticipé. Tous les scripts ont désormais accès à la journalisation Stackdriver.
Depuis Journalisation> Journalisation Stackdriver
L'exemple suivant montre comment utiliser le service de console pour consigner des informations dans 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);
}