Giới thiệu về JavaScript cho Earth Engine

Hướng dẫn này chỉ đề cập đến JavaScript vừa đủ để giúp bạn bắt đầu viết tập lệnh Earth Engine. Để xem các hướng dẫn đầy đủ hơn về JavaScript, hãy xem các tài nguyên này của nhà phát triển Mozilla. Để biết thông tin giới thiệu về lập trình, kèm theo ví dụ bằng JavaScript, hãy xem Eloquent JavaScript. Để biết các đề xuất về kiểu mã hoá JavaScript, hãy xem Hướng dẫn về kiểu JavaScript của Google. Trong hướng dẫn này, bạn sẽ viết JavaScript trong Trình chỉnh sửa mã của Earth Engine. Trước khi bắt đầu, hãy sử dụng hướng dẫn về Trình chỉnh sửa mã để làm quen với môi trường Trình chỉnh sửa mã.

Xin chào!

Đã đến lúc bạn viết đoạn mã JavaScript đầu tiên cho Earth Engine! Trong trình duyệt Chrome, hãy truy cập vào code.earthengine.google.com rồi sao chép nội dung sau vào Trình chỉnh sửa mã:

Trình soạn thảo mã (JavaScript)

print('Hello World!');

Nhấp vào Run (Chạy) và quan sát để thấy dòng chữ "Hello world!" được in vào thẻ Bảng điều khiển. Dòng trên là một câu lệnh JavaScript. Trong JavaScript, các câu lệnh kết thúc bằng dấu chấm phẩy. Các chương trình Earth Engine bao gồm một tập hợp các câu lệnh như câu lệnh này. Bạn có thể ngăn mã chạy mà không cần xoá bằng cách thêm chú thích vào mã. Một trong những cách để chú thích mã là đặt hai dấu gạch chéo lên // trước mã mà bạn không muốn chạy. Ví dụ:

Trình soạn thảo mã (JavaScript)

// print('Hello World!');

Bạn nên thêm nhiều nhận xét vào mã để mô tả những gì bạn đang cố gắng thực hiện. Bạn cũng nên xoá mã được nhận xét mà không còn hoạt động nữa. Cả hai phương pháp này sẽ giúp cải thiện khả năng đọc mã.

Các loại dữ liệu JavaScript cơ bản

Chuỗi

Việc sử dụng các biến để lưu trữ đối tượng và kiểu dữ liệu nguyên thuỷ giúp mã dễ đọc hơn. Ví dụ: một biến lưu trữ đối tượng chuỗi được xác định bằng dấu ngoặc đơn ' hoặc dấu ngoặc kép " (nhưng không được trộn lẫn), trong đó dấu ngoặc đơn được ưu tiên. Tạo một chuỗi mới và lưu trữ chuỗi đó trong một biến có tên là greetString:

Trình soạn thảo mã (JavaScript)

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

Numbers

Xin lưu ý rằng các biến được xác định bằng từ khoá var. Các biến cũng có thể lưu trữ các con số:

Trình soạn thảo mã (JavaScript)

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

Trong ví dụ này, hãy lưu ý rằng khi print() được cung cấp 2 đối số phân tách bằng dấu phẩy, mỗi đối số sẽ được in trên một dòng riêng biệt.

Danh sách

Xác định danh sách bằng dấu ngoặc vuông []. Một danh sách số, ví dụ:

Trình soạn thảo mã (JavaScript)

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

Danh sách cũng có thể lưu trữ các chuỗi hoặc đối tượng khác. Ví dụ:

Trình soạn thảo mã (JavaScript)

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

Đối tượng

Các đối tượng trong JavaScript là từ điển của các cặp key: value. Tạo một đối tượng (hoặc từ điển) bằng dấu ngoặc nhọn {}, ví dụ:

Trình soạn thảo mã (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);

Xin lưu ý rằng bạn có thể lấy một giá trị từ từ điển bằng cách cung cấp khoá. Ví dụ này cho bạn thấy cách thực hiện việc đó cho các đối tượng JavaScript. Sau đó, bạn sẽ tìm hiểu cách thực hiện việc này cho các từ điển trên máy chủ Earth Engine.

Hàm

Hàm là một cách khác để cải thiện khả năng đọc và khả năng tái sử dụng mã bằng cách nhóm các tập hợp thao tác. Xác định một hàm bằng từ khoá function. Tên hàm bắt đầu bằng một chữ cái và có một cặp dấu ngoặc đơn ở cuối. Các hàm thường nhận tham số để cho hàm biết cần làm gì. Các tham số này nằm trong dấu ngoặc đơn (). Tập hợp các câu lệnh tạo nên hàm nằm trong dấu ngoặc nhọn. Từ khoá return cho biết đầu ra của hàm. Có một số cách để khai báo một hàm, nhưng ở đây chúng ta sẽ sử dụng một cách như sau:

Trình soạn thảo mã (JavaScript)

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

Hãy xem xét từng dòng một. Dòng đầu tiên tạo một hàm mới và chỉ định hàm đó cho biến myFunction. Biến này có thể được đặt tên bất kỳ. Nó xác định cách gọi hàm sau này. Các thuật ngữ trong dấu ngoặc đơn sau tên hàm (tức là parameter1, parameter2, parameter3) là tên tham số và cũng có thể được đặt tên bất kỳ, mặc dù bạn nên đặt cho chúng những tên riêng biệt khác với mã bên ngoài hàm. Dù bạn đặt tên cho chúng là gì, thì đây là những tên mà hàm sẽ dùng để tham chiếu đến các giá trị được truyền vào hàm khi hàm được gọi. Giá trị của một tham số sau khi được truyền vào một hàm được gọi là đối số. Mặc dù các hàm có thể sử dụng các biến được khai báo bên ngoài hàm (biến toàn cục), nhưng các đối số hàm không xuất hiện bên ngoài hàm. Hàm có thể nhận bao nhiêu tham số tuỳ ý, thậm chí là không có tham số nào. Dưới đây là một ví dụ đơn giản về một hàm chỉ trả về đối số của nó:

Trình soạn thảo mã (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!'));

Đây là một ví dụ về hàm do người dùng xác định. Ngoài ra, còn có rất nhiều hàm Earth Engine tích hợp sẵn. Khám phá thẻ Tài liệu của Trình chỉnh sửa mã để tìm hiểu về các hàm tích hợp này. Sau đây là một ví dụ rất đơn giản về hàm Earth Engine:

Trình soạn thảo mã (JavaScript)

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

Trong phần tiếp theo, hãy tìm hiểu thêm về Các đối tượng và phương thức của Earth Engine.