字符串
使用变量来存储对象和原语有助于代码的可读性。例如,存储字符串对象的变量由单引号'
或双 "
引号定义(但不要混合使用), 首选单引号。创建一个新字符串并将其存储在一个名为的变量中 greetString
:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-comments-color)">// Use single (or double) quotes to make a string.</span>
<span style="color:var(--devsite-code-keywords-color)">var</span> greetString = <span style="color:var(--devsite-code-strings-color)">'Ahoy there!'</span>;
<span style="color:var(--devsite-code-comments-color)">// Use parentheses to pass arguments to functions.</span>
<span style="color:var(--devsite-code-keywords-color)">print</span>(greetString);</span>
数字
请注意,变量是使用关键字定义的var
。变量也可以存储数字:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-comments-color)">// Store a number in a variable.</span>
<span style="color:var(--devsite-code-keywords-color)">var</span> number = <span style="color:var(--devsite-code-numbers-color)">42</span>;
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'The answer is:'</span>, number);</span>
在这个例子中,观察到当print()
给出两个用逗号分隔的参数时,每个参数都打印在不同的行上。
列表
用方括号定义列表[]
。数字列表,例如:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-comments-color)">// Use square brackets [] to make a list.</span>
<span style="color:var(--devsite-code-keywords-color)">var</span> listOfNumbers = [<span style="color:var(--devsite-code-numbers-color)">0</span>, <span style="color:var(--devsite-code-numbers-color)">1</span>, <span style="color:var(--devsite-code-numbers-color)">1</span>, <span style="color:var(--devsite-code-numbers-color)">2</span>, <span style="color:var(--devsite-code-numbers-color)">3</span>, <span style="color:var(--devsite-code-numbers-color)">5</span>];
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'List of numbers:'</span>, listOfNumbers);</span>
列表还可以存储字符串或其他对象。例如:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-comments-color)">// Make a list of strings.</span>
<span style="color:var(--devsite-code-keywords-color)">var</span> listOfStrings = [<span style="color:var(--devsite-code-strings-color)">'a'</span>, <span style="color:var(--devsite-code-strings-color)">'b'</span>, <span style="color:var(--devsite-code-strings-color)">'c'</span>, <span style="color:var(--devsite-code-strings-color)">'d'</span>];
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'List of strings:'</span>, listOfStrings);</span>
对象
JavaScript 中的对象是key: value
对的字典。使用花括号创建一个对象(或字典){}
,例如:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-comments-color)">// Use curly brackets {} to make a dictionary of key:value pairs.</span>
<span style="color:var(--devsite-code-keywords-color)">var</span> <span style="color:var(--devsite-code-keywords-color)">object</span> = {
foo: <span style="color:var(--devsite-code-strings-color)">'bar'</span>,
baz: <span style="color:var(--devsite-code-numbers-color)">13</span>,
stuff: [<span style="color:var(--devsite-code-strings-color)">'this'</span>, <span style="color:var(--devsite-code-strings-color)">'that'</span>, <span style="color:var(--devsite-code-strings-color)">'the other thing'</span>]
};
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'Dictionary:'</span>, <span style="color:var(--devsite-code-keywords-color)">object</span>);
<span style="color:var(--devsite-code-comments-color)">// Access dictionary items using square brackets.</span>
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'Print foo:'</span>, <span style="color:var(--devsite-code-keywords-color)">object</span>[<span style="color:var(--devsite-code-strings-color)">'foo'</span>]);
<span style="color:var(--devsite-code-comments-color)">// Access dictionary items using dot notation.</span>
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'Print stuff:'</span>, <span style="color:var(--devsite-code-keywords-color)">object</span>.stuff);</span>
请注意,您可以通过提供键从字典中获取值。此示例向您展示如何对 JavaScript 对象执行此操作。稍后您将学习如何为 Earth Engine 服务器上的字典执行此操作。
函数
函数是通过对操作集进行分组来提高代码可读性和可重用性的另一种方法。function
用关键字定义一个函数。函数名称以字母开头,末尾有一对括号。函数通常带有 参数,这些参数告诉函数要做什么。这些参数放在括号内()
。组成函数的语句集放在大括号内。return
关键字表示函数输出是什么。有几种方法可以声明一个函数,但在这里我们将使用这样的方法:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-keywords-color)">var</span> myFunction = <span style="color:var(--devsite-code-keywords-color)">function</span>(parameter1, parameter2, parameter3) {
statement;
statement;
statement;
<span style="color:var(--devsite-code-keywords-color)">return</span> statement;
};</span>
让我们逐行考虑。第一行创建一个新函数并将其分配给变量myFunction
。这个变量可以被命名为任何东西。它定义了以后如何调用该函数。函数名称后面括号中的术语(即parameter1、parameter2、parameter3)是参数名称,也可以命名为任何名称,但最好为它们提供与函数外部代码不同的唯一名称。无论您如何命名它们,这些都是函数将用于引用在调用时传递给函数的值的名称。参数传入函数后的值称为实参. 尽管函数可以使用在函数外部声明的变量(全局变量),但函数参数在函数外部是不可见的。函数可以根据需要使用任意数量的参数,甚至为零。这是一个仅返回其参数的函数的简单示例:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-comments-color)">// The reflect function takes a single parameter: element.</span>
<span style="color:var(--devsite-code-keywords-color)">var</span> reflect = <span style="color:var(--devsite-code-keywords-color)">function</span>(element) {
<span style="color:var(--devsite-code-comments-color)">// Return the argument.</span>
<span style="color:var(--devsite-code-keywords-color)">return</span> element;
};
<span style="color:var(--devsite-code-keywords-color)">print</span>(<span style="color:var(--devsite-code-strings-color)">'A good day to you!'</span>, reflect(<span style="color:var(--devsite-code-strings-color)">'Back at you!'</span>));</span>
这是用户定义函数的示例。还有很多内置的地球引擎功能。探索代码编辑器文档选项卡以了解这些内置函数。这是地球引擎功能的一个非常简单的示例:
<span style="color:var(--devsite-code-color)"><span style="color:var(--devsite-code-keywords-color)">var</span> aString = ee.<span style="color:var(--devsite-code-types-color)">Algorithms</span>.<span style="color:var(--devsite-code-types-color)">String</span>(<span style="color:var(--devsite-code-numbers-color)">42</span>);</span>