Hướng dẫn về cách làm việc với nó

Spread the love

TypeScript là một siêu bộ JavaScript giúp bạn viết mã an toàn kiểu.

Với TypeScript, bạn sẽ có thể phát hiện lỗi sớm hơn và sửa chúng. Một trong những tính năng quan trọng của TypeScript là Enums. Enum là một cấu trúc phổ biến trong TypeScript giúp bạn viết mã an toàn hơn.

Trong bài viết này, tôi sẽ giải thích Enums, cách tạo và sử dụng chúng cũng như nhiều thứ khác cần xem xét.

Enum là gì?

Enum là viết tắt của kiểu liệt kê. Kiểu dữ liệu liệt kê được xác định bởi các giá trị khác nhau mà một biến thuộc loại đó có thể nhận. Các giá trị khác nhau mà nó có thể nhận thường được gọi là thành viên hoặc phần tử.

Trong bài viết này, chúng tôi sẽ gọi họ là thành viên. Enums không chỉ là một tính năng của TypeScript. Đúng hơn, các kiểu liệt kê cũng có mặt và được sử dụng trong các ngôn ngữ lập trình khác. Sử dụng enum giúp đảm bảo an toàn kiểu tốt hơn trong các chương trình TypeScript.

Cũng đọc: Các thư viện TypeScript và thời gian chạy hàng đầu cần biết với tư cách là nhà phát triển

Tại sao nên sử dụng Enum?

Enums giúp bạn chỉ định những giá trị mà một biến có thể giữ. Chúng cũng giúp bạn chỉ định những giá trị mà đối số hàm có thể nhận. Điều này giúp đảm bảo rằng các nhà phát triển luôn cung cấp các giá trị mong đợi cho các biến và đối số hàm. Điều này sẽ giúp loại bỏ lỗi và giúp bạn viết mã an toàn và mạnh mẽ hơn.

  Top 11 Game Thể Thao Điện Tử Bạn Nên Chơi

Điều kiện tiên quyết để làm việc với Enums

Trong hướng dẫn này, tôi sẽ trình bày cách làm việc với enum trong TypeScript. Để làm theo hướng dẫn này, bạn cần có khả năng chạy và thực thi mã TypeScript.

Do đó, bạn cần cài đặt NodeJ để thực thi mã JavaScript của mình. Nếu bạn chưa cài đặt TypeScript, video bên dưới là hướng dẫn cách thực hiện.

Ngoài ra, nếu bạn muốn biên dịch và thực thi tập lệnh ngay lập tức, hãy sử dụng ts-node. Mặc dù đó là những gì tôi sẽ làm trong bài viết này, nhưng đối với các dự án lớn hơn, tôi khuyên bạn nên cài đặt TypeScript. Để thực thi tập lệnh bằng nút ts, bạn sử dụng lệnh sau:

npx ts-node <scriptname>

Bài viết này cũng giả định rằng bạn đã quen thuộc với JavaScript và TypeScript cơ bản.

Làm việc với một Enum đơn giản

Cách tạo một Enum đơn giản

Enums trong TypeScript được tạo bằng từ khóa enum. Tên của enum theo sau và sau đó là danh sách các thành viên mà enum nắm giữ. Đây là một ví dụ trong đó chúng tôi khai báo một enum cho bốn điểm chính trên la bàn.

enum Direction {
    North,
    East,
    South,
    West
}

Lưu ý rằng không có dấu ngoặc kép nào xung quanh các thành viên trong enum – chúng không phải là chuỗi.

Cách sử dụng Enum đơn giản

Bạn gán một giá trị liệt kê cho một biến như sau:

const heading: Direction = Direction.North;

Bởi vì chúng ta đang gán biến khi khai báo nên TypeScript có thể suy ra kiểu dữ liệu. Kết quả là chúng ta không cần phải xác nhận loại. Thay vào đó, chúng ta có thể viết thế này:

const heading = Direction.North;

Để tìm giá trị của biến tiêu đề, chúng ta có thể console.log nó.

console.log(heading);

Kết quả của việc này sẽ là:

0

Biến tiêu đề chứa giá trị 0 mặc dù chúng tôi đã gán giá trị Direction.North cho nó. Điều này là do mỗi thành viên được gán một giá trị số khi tạo enum. Thành viên đầu tiên được gán 0, thành viên thứ hai là 1, v.v. Đây là một cuộc biểu tình:

console.log(Direction.North, Direction.East, Direction.South, Direction.West)

Do đó, bạn có thể kiểm tra xem biến tiêu đề có chứa North hay không bằng cách xác nhận rằng nó bằng 0. Ví dụ:

// Asserting equality
let isNorth = heading == 0;

// Printing the result
console.log(isNorth);

Như đã trình bày trước đó, Direction.North bằng 0. Vì vậy, thay vì kiểm tra xem tiêu đề có bằng 0 hay không, chúng ta có thể kiểm tra xem nó có bằng Direction.North hay không.

// Checking if direction is North
isNorth = heading == Direction.North;

// Printing the result
console.log(isNorth);

Tất cả điều này đều hữu ích; rất có thể đó là cách bạn sẽ sử dụng các giá trị được liệt kê. Tuy nhiên, bạn có thể làm được nhiều hơn thế, như bạn sẽ thấy sau. Phần tiếp theo này sẽ thảo luận về cách bạn có thể làm việc với các giá trị tùy chỉnh.

  12 Khung công cụ và Bộ công cụ Tốt nhất để Xây dựng Ứng dụng Máy tính để bàn

Làm việc với các giá trị tùy chỉnh

Khi bạn tạo một enum, TypeScript sẽ tự động gán các giá trị số cho các thành viên bắt đầu từ 0. Tuy nhiên, bạn có thể muốn các thành viên của mình có các giá trị tùy chỉnh thay vì các giá trị mặc định, trong trường hợp đó, bạn có thể chỉ định chúng. Giống như vậy:

enum StarRating {
    VeryPoor = 1,
    Poor = 2,
    Average = 3,
    Good = 4,
    Excellent = 5
}

Ngoài ra, bạn có thể làm như sau:

enum StarRating {
    VeryPoor = 1,
    Poor,
    Average,
    Good,
    Excellent
}

Trong trường hợp này, thành viên đầu tiên sẽ được gán giá trị là 1. Các lựa chọn tiếp theo sẽ được tự động tăng lên so với lựa chọn trước đó. Vì vậy, Kém sẽ có xếp hạng là 2, trung bình là 3, v.v.

  Cách sao chép định dạng nhanh chóng và dễ dàng trong Google Documents

Các lựa chọn trong enum không phải lúc nào cũng có giá trị bằng số, như bạn sẽ thấy sau. Tuy nhiên, những giá trị có giá trị bằng số sẽ hoạt động như những con số bình thường.

console.log(typeof StarRating.Average);

Điều này sẽ in “số”. Điều này có nghĩa là bạn có thể thực hiện tất cả các thao tác về số, bao gồm cả việc so sánh như:

console.log(StarRating.Excellent > StarRating.Average)

Điều này sẽ in ra “true”.

Sử dụng chuỗi làm giá trị tùy chỉnh

Như đã đề cập trước đó, các lựa chọn enum có thể có giá trị chuỗi thay vì chỉ là số. Đây là cách bạn sẽ làm điều đó:

enum Choice {
    RedPill = "Know Everything"
    BluePill = "Know Nothing"
}

Trong trường hợp này, các lựa chọn enum sẽ hoạt động giống như những lựa chọn trước đó. Tuy nhiên, vì các giá trị là chuỗi nên bạn có thể thực hiện các phép toán chuỗi chứ không phải các phép toán số, như trong ví dụ trước.

Enum không đồng nhất

Bạn cũng có thể kết hợp các giá trị chuỗi và số. Điều này không được khuyến khích và không hữu ích lắm, nhưng dù sao cũng có thể.

enum Mixed {
    First = "String"
    Second = 2
}

Từ cuối cùng

Trong bài viết này, chúng tôi đã đề cập đến enum trong TypeScript là gì. Chúng tôi cũng thảo luận tại sao chúng quan trọng. Chúng tôi cũng đề cập đến các loại giá trị khác nhau mà các thành viên enum có thể có.

Tiếp theo, hãy xem bài viết của chúng tôi về Loại so với Giao diện trong TypeScript.

x