Menjawab pertanyaan OP
A) Apa yang tidak saya mengerti tentang cara kerja Konsol Skrip Google Apps terkait dengan pencetakan sehingga saya dapat melihat apakah kode saya mencapai apa yang saya inginkan?
Kode pada file .gs dari proyek Skrip Google Apps dijalankan di server, bukan di browser web. Cara untuk mencatat pesan adalah dengan menggunakan Class Logger .
B) Apakah ada masalah dengan kode?
Seperti yang dikatakan pesan kesalahan, masalahnya adalah console
itu tidak ditentukan tetapi saat ini kode yang sama akan memunculkan kesalahan lain:
ReferenceError: "playerArray" tidak ditentukan. (baris 12, file "Kode")
Itu karena playerArray didefinisikan sebagai variabel lokal. Memindahkan garis keluar dari fungsi akan menyelesaikan masalah ini.
var playerArray = [];
function addplayerstoArray(numplayers) {
for (i=0; i<numplayers; i++) {
playerArray.push(i);
}
}
addplayerstoArray(7);
console.log(playerArray[3])
Sekarang kode dijalankan tanpa menimbulkan error, sebagai gantinya untuk melihat konsol browser, kita harus melihat Stackdriver Logging. Dari UI editor Google Apps Script, klik Tampilan> Stackdriver Logging .
Tambahan
Pada 2017 Google merilis ke semua skrip Stackdriver Logging dan menambahkan Konsol Kelas, jadi termasuk sesuatu seperti console.log('Hello world!')
tidak akan menimbulkan kesalahan tetapi log akan ada di Layanan Logging Stackdriver Google Cloud Platform, bukan konsol browser.
Dari Catatan Rilis Skrip Google Apps 2017
23 Juni 2017
Stackdriver Logging telah dipindahkan dari Akses Awal. Semua skrip sekarang memiliki akses ke Stackdriver logging.
Dari Logging> Stackdriver logging
Contoh berikut menunjukkan cara menggunakan layanan konsol untuk mencatat informasi di 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);
}