Este tutorial aborda o suficiente de JavaScript para você começar a escrever scripts do Earth Engine. Para tutoriais mais detalhados sobre JavaScript, consulte estes recursos para desenvolvedores da Mozilla. Para uma introdução à programação, com exemplos em JavaScript, consulte Eloquent JavaScript (em inglês). Para sugestões sobre o estilo de programação em JavaScript, consulte o Guia de estilo de JavaScript do Google. Neste tutorial, você vai escrever JavaScript no Editor de código do Earth Engine. Antes de começar, use o guia do Code Editor para conhecer o ambiente.
Hello World!
É hora de escrever seu primeiro JavaScript para o Earth Engine. No navegador Chrome, acesse code.earthengine.google.com e copie o seguinte no Editor de código:
Editor de código (JavaScript)
print('Hello World!');
Clique em Executar e observe que "Hello world!" é impresso na guia "Console". A linha acima é uma instrução
JavaScript. Em JavaScript, as instruções terminam com um ponto e vírgula. Os programas do Earth Engine são compostos por um conjunto de instruções como esta. Você pode impedir que o código seja executado sem
excluí-lo, basta adicionar comentários. Uma das maneiras de comentar o código é colocando duas
barras //
antes do código que você não quer executar. Exemplo:
Editor de código (JavaScript)
// print('Hello World!');
É uma boa prática colocar muitos comentários no código para descrever o que você está tentando fazer. Também é bom excluir o código comentado que não faz mais nada. Ambas as práticas melhoram a legibilidade do código.
Tipos de dados básicos do JavaScript
Strings
Usar variáveis para armazenar objetos e primitivos ajuda na legibilidade do código. Por exemplo, uma variável que armazena um objeto de string é definida por aspas simples '
ou duplas "
(mas não misture as duas), sendo preferíveis as aspas simples. Crie uma nova string e armazene-a em uma variável chamada
greetString
:
Editor de código (JavaScript)
// Use single (or double) quotes to make a string. var greetString = 'Ahoy there!'; // Use parentheses to pass arguments to functions. print(greetString);
Números
As variáveis são definidas com a palavra-chave var
. As variáveis também podem armazenar números:
Editor de código (JavaScript)
// Store a number in a variable. var number = 42; print('The answer is:', number);
Neste exemplo, observe que, quando print()
recebe dois argumentos separados por vírgulas, cada argumento é impresso em uma linha diferente.
Listas
Defina listas com colchetes []
. Uma lista de números, por exemplo:
Editor de código (JavaScript)
// Use square brackets [] to make a list. var listOfNumbers = [0, 1, 1, 2, 3, 5]; print('List of numbers:', listOfNumbers);
As listas também podem armazenar strings ou outros objetos. Exemplo:
Editor de código (JavaScript)
// Make a list of strings. var listOfStrings = ['a', 'b', 'c', 'd']; print('List of strings:', listOfStrings);
Objetos
Os objetos em JavaScript são dicionários de pares key: value
. Crie um objeto (ou dicionário) usando chaves {}
. Por exemplo:
Editor de código (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);
É possível receber um valor de um dicionário fornecendo a chave. Este exemplo mostra como fazer isso para objetos JavaScript. Depois, você vai aprender a fazer isso com dicionários que estão no servidor do Earth Engine.
Funções
As funções são outra maneira de melhorar a legibilidade e a reutilização do código agrupando conjuntos de operações. Defina uma função com a palavra-chave function
. Os nomes de funções começam com uma letra e têm um par de parênteses no final. As funções geralmente usam parâmetros que informam à função o que fazer. Esses parâmetros ficam entre parênteses ()
. O conjunto de instruções que compõem a função fica entre chaves. A palavra-chave return
indica qual é a saída da função. Há várias maneiras de declarar uma função, mas aqui vamos usar algo assim:
Editor de código (JavaScript)
var myFunction = function(parameter1, parameter2, parameter3) { statement; statement; statement; return statement; };
Vamos analisar as linhas uma por uma. A primeira linha cria uma nova função e a atribui à variável myFunction
. Essa variável poderia ter qualquer nome. Ele define como chamar a função mais tarde. Os termos entre parênteses após o nome da função (ou seja, parameter1, parameter2, parameter3) são os nomes dos parâmetros e poderiam ter recebido qualquer nome. No entanto, é recomendável dar a eles nomes exclusivos que sejam diferentes do código fora da função. Seja qual for o nome, esses são os nomes que a função vai usar para se referir aos valores transmitidos a ela quando é chamada. O valor de um parâmetro depois que ele é transmitido para uma função é chamado de argumento. Embora as funções possam usar variáveis declaradas fora delas (variáveis globais), os argumentos não são visíveis fora da função. As funções podem ter quantos parâmetros forem necessários, até mesmo zero. Confira um exemplo simples de uma função que apenas retorna o argumento:
Editor de código (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!'));
Este é um exemplo de função definida pelo usuário. Há também muitas funções integradas do Earth Engine. Acesse a guia Documentos do Editor de código para saber mais sobre essas funções integradas. Confira um exemplo muito simples de uma função do Earth Engine:
Editor de código (JavaScript)
var aString = ee.Algorithms.String(42);
Na próxima seção, saiba mais sobre objetos e métodos do Earth Engine.