Menu
CoddyTech

Phân rã tuple

Thuộc phần Giới thiệu về TypeScript trong hành trình JavaScript của Coddy. Bài học 17 trên 73.

Mặc dù truy cập các phần tử tuple bằng chỉ số hoạt động rất tốt, vẫn có một cách tinh tế hơn để lấy giá trị từ tuple: giải nén (destructuring). Tính năng này của JavaScript hoạt động liền mạch với tuple có kiểu dữ liệu của TypeScript, cho phép bạn giải nén các giá trị tuple thành những biến riêng biệt chỉ trong một dòng.

Phân rã mảng dùng dấu ngoặc vuông ở vế trái của phép gán để tạo các biến mới tương ứng với từng vị trí trong tuple:

let userInfo: [number, string] = [42, "Alice"];
let [id, name] = userInfo;

console.log(id);   // 42 (TypeScript knows this is a number)
console.log(name); // "Alice" (TypeScript knows this is a string)
challenge icon

Thử thách

Dễ

Tạo một tuple tên là employee, chứa một số (mã nhân viên) theo sau là một chuỗi (tên nhân viên). Khởi tạo tuple với mã 1001 và tên "Sarah Johnson".

Dùng phép phân rã để trích xuất các giá trị từ tuple employee vào hai biến riêng có tên empId và empName.

Tạo một tuple khác tên là coordinates, chứa hai số biểu thị tọa độ vĩ độ và kinh độ. Khởi tạo tuple với các giá trị 40.7128 và -74.0060.

Dùng phép phân rã để trích xuất các giá trị từ tuple coordinates vào hai biến riêng có tên latitude và longitude.

In các biến đã phân rã theo thứ tự sau, mỗi biến trên một dòng riêng:

  • In mã nhân viên
  • In tên nhân viên
  • In vĩ độ
  • In kinh độ

Tự làm thử

// TODO: Viết code của bạn ở đây
// Tạo tuple employee với ID 1001 và tên "Sarah Johnson"
// Dùng phép phân rã để lấy empId và empName
// Tạo tuple coordinates với các giá trị 40.7128 và -74.0060 (tránh dùng 'location' làm tên biến)
// Dùng phép phân rã để lấy latitude và longitude
// In ra cả bốn biến theo thứ tự đã chỉ định

// In ra kết quả (bỏ chú thích và chỉnh sửa nếu cần)
// console.log(empId);
// console.log(empName);
// console.log(latitude);
// console.log(longitude);
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Giới thiệu về TypeScript

Tự luyện tập: Playground TypeScript