Introduzione a JavaScript per Earth Engine

Questo tutorial tratta solo le nozioni di base di JavaScript per iniziare a scrivere script Earth Engine. Per tutorial più approfonditi su JavaScript, consulta queste risorse per sviluppatori di Mozilla. Per un'introduzione alla programmazione, con esempi in JavaScript, consulta Eloquent JavaScript. Per suggerimenti sullo stile di programmazione JavaScript, consulta la Guida allo stile JavaScript di Google. In questo tutorial scriverai codice JavaScript nell'editor di codice di Earth Engine. Prima di iniziare, utilizza la guida all'editor di codice per familiarizzare con l'ambiente dell'editor di codice.

Hello World!

È il momento di scrivere il tuo primo codice JavaScript per Earth Engine. Nel browser Chrome, vai su code.earthengine.google.com e copia il seguente codice nell'editor di codice:

Editor di codice (JavaScript)

print('Hello World!');

Fai clic su Esegui e osserva che "Hello world!" viene stampato nella scheda Console. La riga precedente è un'istruzione JavaScript. In JavaScript, le istruzioni terminano con un punto e virgola. I programmi Earth Engine sono costituiti da un insieme di istruzioni come questa. Puoi impedire l'esecuzione del codice senza eliminarlo commentandolo. Uno dei modi per commentare il codice è inserire due barre // prima del codice che non vuoi eseguire. Ad esempio:

Editor di codice (JavaScript)

// print('Hello World!');

È buona norma inserire molti commenti nel codice per descrivere cosa stai cercando di fare. È anche consigliabile eliminare il codice commentato che non fa più nulla. Entrambe queste pratiche miglioreranno la leggibilità del codice.

Tipi di dati JavaScript di base

Stringa

L'utilizzo di variabili per archiviare oggetti e primitive migliora la leggibilità del codice. Ad esempio, una variabile che memorizza un oggetto stringa è definita da virgolette singole ' o doppie " (ma non mescolarle), con virgolette singole preferite. Crea una nuova stringa e memorizzala in una variabile chiamata greetString:

Editor di codice (JavaScript)

// Use single (or double) quotes to make a string.
var greetString = 'Ahoy there!';
// Use parentheses to pass arguments to functions.
print(greetString);

Numeri

Tieni presente che le variabili sono definite con la parola chiave var. Le variabili possono anche memorizzare numeri:

Editor di codice (JavaScript)

// Store a number in a variable.
var number = 42;
print('The answer is:', number);

In questo esempio, osserva che quando print() riceve due argomenti separati da virgole, ogni argomento viene stampato su una riga diversa.

Elenchi

Definisci gli elenchi con parentesi quadre []. Un elenco di numeri, ad esempio:

Editor di codice (JavaScript)

// Use square brackets [] to make a list.
var listOfNumbers = [0, 1, 1, 2, 3, 5];
print('List of numbers:', listOfNumbers);

Gli elenchi possono anche memorizzare stringhe o altri oggetti. Ad esempio:

Editor di codice (JavaScript)

// Make a list of strings.
var listOfStrings = ['a', 'b', 'c', 'd'];
print('List of strings:', listOfStrings);

Oggetti

Gli oggetti in JavaScript sono dizionari di coppie key: value. Crea un oggetto (o un dizionario) utilizzando le parentesi graffe {}, ad esempio:

Editor di codice (JavaScript)

// Use curly brackets {} to make a dictionary of key:value pairs.
var object = {
  foo: 'bar',
  baz: 13,
  stuff: ['this', 'that', 'the other thing']
};
print('Dictionary:', object);
// Access dictionary items using square brackets.
print('Print foo:', object['foo']);
// Access dictionary items using dot notation.
print('Print stuff:', object.stuff);

Tieni presente che puoi ottenere un valore da un dizionario fornendo la chiave. Questo esempio mostra come farlo per gli oggetti JavaScript. Più avanti imparerai a farlo per i dizionari che si trovano sul server Earth Engine.

Funzioni

Le funzioni sono un altro modo per migliorare la leggibilità e la riutilizzabilità del codice raggruppando insiemi di operazioni. Definisci una funzione con la parola chiave function. I nomi delle funzioni iniziano con una lettera e terminano con una coppia di parentesi. Le funzioni spesso accettano parametri che indicano alla funzione cosa fare. Questi parametri vanno inseriti tra parentesi (). L'insieme di istruzioni che compongono la funzione va inserito tra parentesi graffe. La parola chiave return indica l'output della funzione. Esistono diversi modi per dichiarare una funzione, ma qui utilizzeremo qualcosa di simile:

Editor di codice (JavaScript)

var myFunction = function(parameter1, parameter2, parameter3) {
  statement;
  statement;
  statement;
  return statement;
};

Esaminiamo le righe una alla volta. La prima riga crea una nuova funzione e la assegna alla variabile myFunction. Questa variabile avrebbe potuto essere chiamata in qualsiasi modo. Definisce come chiamare la funzione in un secondo momento. I termini tra parentesi dopo il nome della funzione (ad es. parametro1, parametro2, parametro3) sono i nomi dei parametri e avrebbero potuto essere chiamati in qualsiasi modo, anche se è buona prassi assegnare loro nomi univoci diversi dal codice esterno alla funzione. Qualunque nome tu scelga, questi sono i nomi che la funzione utilizzerà per fare riferimento ai valori passati alla funzione quando viene chiamata. Il valore di un parametro una volta passato a una funzione è chiamato argomento. Sebbene le funzioni possano utilizzare variabili dichiarate al di fuori della funzione (variabili globali), gli argomenti della funzione non sono visibili al di fuori della funzione. Le funzioni possono accettare tutti i parametri che ti servono, anche zero. Ecco un semplice esempio di una funzione che restituisce solo il suo argomento:

Editor di codice (JavaScript)

// The reflect function takes a single parameter: element.
var reflect = function(element) {
  // Return the argument.
  return element;
};
print('A good day to you!', reflect('Back at you!'));

Questo è un esempio di funzione definita dall'utente. Sono disponibili anche molte funzioni Earth Engine integrate. Esplora la scheda Documenti dell'editor di codice per scoprire queste funzioni integrate. Ecco un esempio molto semplice di funzione Earth Engine:

Editor di codice (JavaScript)

var aString = ee.Algorithms.String(42);

Nella sezione successiva, scopri di più su oggetti e metodi di Earth Engine.