Présentation de JavaScript pour Earth Engine

Ce tutoriel couvre juste assez de JavaScript pour vous permettre de commencer à écrire des scripts Earth Engine. Pour des tutoriels JavaScript plus complets, consultez ces ressources pour les développeurs Mozilla. Pour une introduction à la programmation, avec des exemples en JavaScript, consultez Eloquent JavaScript. Pour obtenir des suggestions sur le style de codage JavaScript, consultez le guide de style JavaScript de Google. Dans ce tutoriel, vous allez écrire du code JavaScript dans l'éditeur de code Earth Engine. Avant de commencer, consultez le guide de l'éditeur de code pour vous familiariser avec l'environnement de l'éditeur de code.

Hello World!

Il est temps d'écrire votre premier code JavaScript pour Earth Engine. Dans votre navigateur Chrome, accédez à code.earthengine.google.com et copiez le code suivant dans l'éditeur de code :

Éditeur de code (JavaScript)

print('Hello World!');

Cliquez sur Run (Exécuter) et observez que "Hello world!" s'affiche dans l'onglet Console. La ligne ci-dessus est une instruction JavaScript. En JavaScript, les instructions se terminent par un point-virgule. Les programmes Earth Engine sont constitués d'un ensemble d'instructions comme celle-ci. Vous pouvez empêcher l'exécution du code sans le supprimer en le commentant. Pour mettre du code en commentaire, vous pouvez placer deux barres obliques // avant le code que vous ne souhaitez pas exécuter. Exemple :

Éditeur de code (JavaScript)

// print('Hello World!');

Il est recommandé d'ajouter de nombreux commentaires à votre code pour décrire ce que vous essayez de faire. Il est également conseillé de supprimer le code commenté qui ne fait plus rien. Ces deux pratiques amélioreront la lisibilité du code.

Types de données JavaScript de base

Strings

L'utilisation de variables pour stocker des objets et des primitives améliore la lisibilité du code. Par exemple, une variable qui stocke un objet de chaîne est définie par des guillemets simples ' ou doubles " (mais ne les mélangez pas), les guillemets simples étant préférables. Créez une chaîne et stockez-la dans une variable appelée greetString :

Éditeur de code (JavaScript)

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

Numbers

Notez que les variables sont définies avec le mot clé var. Les variables peuvent également stocker des nombres :

Éditeur de code (JavaScript)

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

Dans cet exemple, notez que lorsque print() reçoit deux arguments séparés par des virgules, chaque argument est affiché sur une ligne différente.

Listes

Définissez les listes avec des crochets []. Une liste de nombres, par exemple :

Éditeur de code (JavaScript)

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

Les listes peuvent également stocker des chaînes ou d'autres objets. Exemple :

Éditeur de code (JavaScript)

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

Objets

Les objets en JavaScript sont des dictionnaires de paires key: value. Créez un objet (ou dictionnaire) à l'aide d'accolades {}, par exemple :

Éditeur de code (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);

Notez que vous pouvez obtenir une valeur à partir d'un dictionnaire en fournissant la clé. Cet exemple montre comment procéder pour les objets JavaScript. Plus tard, vous apprendrez à le faire pour les dictionnaires qui se trouvent sur le serveur Earth Engine.

Fonctions

Les fonctions sont un autre moyen d'améliorer la lisibilité et la réutilisabilité du code en regroupant des ensembles d'opérations. Définissez une fonction avec le mot clé function. Les noms de fonctions commencent par une lettre et se terminent par une paire de parenthèses. Les fonctions utilisent souvent des paramètres qui leur indiquent ce qu'elles doivent faire. Ces paramètres sont placés entre parenthèses (). L'ensemble des instructions qui composent la fonction est placé entre accolades. Le mot clé return indique le résultat de la fonction. Il existe plusieurs façons de déclarer une fonction, mais nous utiliserons ici une méthode de ce type :

Éditeur de code (JavaScript)

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

Examinons les lignes une par une. La première ligne crée une fonction et l'attribue à la variable myFunction. Cette variable aurait pu être nommée n'importe comment. Elle définit comment appeler la fonction ultérieurement. Les termes entre parenthèses après le nom de la fonction (c'est-à-dire parameter1, parameter2, parameter3) sont les noms des paramètres. Ils auraient également pu être nommés de n'importe quelle manière, même s'il est recommandé de leur attribuer des noms uniques qui diffèrent du code en dehors de la fonction. Quel que soit le nom que vous leur donnez, ce sont les noms que la fonction utilisera pour faire référence aux valeurs qui lui sont transmises lorsqu'elle est appelée. La valeur d'un paramètre une fois qu'il a été transmis à une fonction est appelée argument. Bien que les fonctions puissent utiliser des variables déclarées en dehors de la fonction (variables globales), les arguments de fonction ne sont pas visibles en dehors de la fonction. Les fonctions peuvent accepter autant de paramètres que nécessaire, voire aucun. Voici un exemple simple de fonction qui renvoie simplement son argument :

Éditeur de code (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!'));

Il s'agit d'un exemple de fonction définie par l'utilisateur. Il existe également de nombreuses fonctions Earth Engine intégrées. Explorez l'onglet "Docs" de l'éditeur de code pour en savoir plus sur ces fonctions intégrées. Voici un exemple très simple de fonction Earth Engine :

Éditeur de code (JavaScript)

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

Dans la section suivante, vous en apprendrez plus sur les objets et méthodes Earth Engine.