Este tutorial aborda apenas o suficiente de JavaScript para você começar a escrever scripts do Earth Engine. Para tutoriais mais completos sobre JavaScript, consulte estes recursos para desenvolvedores da Mozilla. Para uma introdução à programação, com exemplos em JavaScript, consulte Eloquent JavaScript. Para sugestões sobre o estilo de programação em JavaScript, consulte o Guia de estilo do Google para JavaScript. Neste tutorial, você vai escrever JavaScript no Editor de código do Earth Engine. Antes de começar, use o guia do Editor de Código para se familiarizar com o ambiente do Editor de Código.
Hello World!
É hora de escrever seu primeiro JavaScript para o Earth Engine. No navegador Chrome, acesse code.earthengine.google.com e copie o seguinte para o Editor de código:
Editor de código (JavaScript)
print('Hello World!');
Clique em Run e observe que "Hello world!" é exibido 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. É possível impedir que o código seja executado sem
excluí-lo, basta comentá-lo. Uma das maneiras de comentar o código é colocar 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. Essas duas práticas vão melhorar a legibilidade do código.
Tipos de dados básicos do JavaScript
Strings
O uso de 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 as misture), com
aspas simples
preferenciais. 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. Mais adiante, você vai aprender a fazer isso para 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 dizem à 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. Ela 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
também podem ser nomeados de qualquer forma, embora seja uma boa prática dar a eles nomes exclusivos
que sejam diferentes do código fora da função. Seja qual for o nome que você der, esses são
os nomes que a função vai usar para se referir aos valores transmitidos para ela
quando for chamada. O valor de um parâmetro, depois de ser transmitido para uma função, é
chamado de argumento. Embora as funções possam usar variáveis declaradas fora
delas (variáveis globais), os argumentos de função não são visíveis fora
da função. As funções podem receber quantos parâmetros forem necessários, até mesmo nenhum. Veja 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. Confira a guia Docs do Editor de Código para saber mais sobre essas funções integradas. Veja 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 os objetos e métodos do Earth Engine.