Thẻ học TypeScript

Nhà tài trợ chuyên mục

TypeScript là một tập hợp con có kiểu tĩnh của JavaScript được tạo ra bởi Anders Hejlsberg tại Microsoft. Đây là một ngôn ngữ được thiết kế để tăng năng suất và cải thiện chất lượng mã trong các ứng dụng lớn. TypeScript nổi bật với hệ thống kiểu phong phú và các tính năng ngôn ngữ nâng cao, cho phép phát hiện lỗi tại thời điểm biên dịch và hỗ trợ tốt hơn cho các công cụ phát triển. Ngôn ngữ này cung cấp các tính năng như giao diện, generics và decorators, cung cấp cho nhà phát triển các công cụ để tạo mã dễ đọc và bảo trì hơn. TypeScript cũng hỗ trợ tương thích hoàn toàn với JavaScript và áp dụng dần dần trong các dự án hiện có, duy trì hiệu suất và cho phép sử dụng dễ dàng hệ sinh thái JavaScript.

Ứng dụng thẻ học của chúng tôi bao gồm các câu hỏi phỏng vấn TypeScript được chọn lọc kỹ lưỡng với câu trả lời chi tiết sẽ chuẩn bị hiệu quả cho bạn cho bất kỳ cuộc phỏng vấn nào yêu cầu kiến thức về TypeScript. IT Flashcards không chỉ là một công cụ cho những người tìm việc - đó là một cách tuyệt vời để củng cố và kiểm tra kiến thức của bạn, bất kể kế hoạch nghề nghiệp hiện tại của bạn là gì. Sử dụng ứng dụng thường xuyên sẽ giúp bạn cập nhật với những xu hướng TypeScript mới nhất và giữ kỹ năng của bạn ở mức cao.

Thẻ học TypeScript mẫu từ ứng dụng của chúng tôi

Tải xuống ứng dụng của chúng tôi từ App Store hoặc Google Play để nhận thêm flashcard miễn phí hoặc đăng ký để truy cập vào tất cả flashcard.

Kiểu 'any' trong TypeScript là gì và khi nào nên sử dụng nó?

Loại bất kỳ trong TypeScript là một loại động mà có thể đại diện cho bất kỳ loại dữ liệu nào. Sử dụng loại bất kỳ cho phép chúng ta tránh kiểm tra kiểu trong quá trình biên dịch, và nó có thể được xử lý tương tự như loại động trong các ngôn ngữ lập trình khác, chẳng hạn như JavaScript.

Dưới đây là một ví dụ về việc sử dụng loại bất kỳ trong TypeScript:
let dynamicValue: any = 100;
dynamicValue = "xin chào";
dynamicValue = false;

Mặc dù việc sử dụng loại bất kỳ thuận tiện, nhưng không được khuyến nghị nếu chúng ta biết cấu trúc dữ liệu. Lợi ích chính của TypeScript so với JavaScript là TypeScript giới thiệu kiểu tĩnh, giúp phát hiện lỗi trong quá trình biên dịch.

Việc sử dụng loại bất kỳ nên hạn chế trong các tình huống mà chúng ta không thể xác định một loại cụ thể. Ví dụ, điều này có thể cần thiết khi xử lý dữ liệu động, chẳng hạn như dữ liệu API, có thể thay đổi cấu trúc của nó. Lưu ý - sử dụng quá mức loại bất kỳ có thể dẫn đến việc mất đi lợi ích do TypeScript cung cấp thông qua kiểm tra và xác minh kiểu.

Giải thích kiểu 'void' trong bối cảnh của các hàm trong TypeScript.

Loại void trong TypeScript là một loại đặc biệt được trả về bởi các hàm không trả về giá trị. Trong ngữ cảnh của JavaScript / TypeScript, các hàm không có kiểu trả về khai báo hoặc không có lệnh trả về, trả về undefined. Một loại hàm như vậy có thể được khai báo bằng cách sử dụng loại void.

Loại void rất hữu ích khi chúng ta muốn tạo một hàm được yêu cầu thực hiện một hành động cụ thể nhưng không trả về giá trị. Điều này thường được sử dụng cho các hàm nhằm thay đổi trạng thái của ứng dụng hoặc hiển thị hiệu ứng trên màn hình, chẳng hạn như phản ứng với các sự kiện click.

Ví dụ:
function logMessage(message: string): void {
  console.log(message);
}

Hàm logMessage lấy một chuỗi làm đối số và hiển thị nó trên bảng điều khiển. Nó không trả về bất kỳ giá trị nào. Loại void xác định chính xác rằng nó không nên trả về bất kỳ giá trị nào. Nếu chúng tôi cố gắng trả về bất kỳ giá trị nào từ một hàm như vậy, TypeScript sẽ báo lỗi biên dịch.

Sự khác biệt giữa giao diện và kiểu trong TypeScript là gì?

Trong TypeScript, cả giao diện và loại phục vụ những mục đích tương tự, nhưng có những khác biệt giữa chúng. Tôi sẽ trình bày một số điều dưới đây.

1. Khả năng khai báo kiểu theo nhiều cách: Loại cho phép khai báo phức tạp hơn, ví dụ, chúng ta có thể khai báo một loại như một liên minh, giao chéo, loại bộ, loại chữ, loại chỉ mục, loại được ánh xạ, loại có điều kiện, v.v. Giao điện không có tính linh hoạt như vậy.

2. Mở rộng và thực hiện: Giao diện có thể được mở rộng và thực hiện cho các lớp, điều này có thể làm giảm thiểu công việc viết mã. Ngược lại, kiểu không cung cấp chức năng như vậy.

3. Hợp nhất khai báo: Giao diện có thể có nhiều khai báo trong một phạm vi. Tất cả những khai báo này đều được hợp nhất thành một giao diện. Ngược lại, kiểu không thể được khai báo nhiều hơn một lần.

Ví dụ về việc hợp nhất giao diện:
interface User {
  name: string;
}

interface User {
  age: number;
}

// Bây giờ giao diện User bao gồm các trường tên và tuổi

Ví dụ về sự khác biệt trong việc khai báo một loại:
type User = {
  name: string;
};

// Trình biên dịch sẽ tạo ra lỗi vì các loại không thể được khai báo nhiều hơn một lần
type User = {
  age: number;
};

4. Tương thích loại cấu trúc: Giao diện có thể được sử dụng để xác định tương thích loại cấu trúc, trong khi các loại được thiết kế để xử lý các loại tổng hợp.

Ví dụ về việc sử dụng giao diện và kiểu:
interface ExampleInterface {
    prop1: string;
}

type ExampleType = {
    prop1: string;
    prop2: number;
} | string | number;

Nhưng hãy nhớ rằng lựa chọn giữa giao diện và kiểu chủ yếu phụ thuộc vào trục hoặc tình huống. Mỗi cái đều có ưu và nhược điểm của riêng nó.

Làm thế nào bạn có thể định nghĩa một đối tượng với các thuộc tính và kiểu cụ thể trong TypeScript?

Trong TypeScript, chúng ta có thể định nghĩa một đối tượng với các thuộc tính và loại được xác định bằng cách sử dụng giao diện hoặc loại bí danh được gọi là. Cả hai cơ chế này tập trung vào việc kiểm tra hình dạng mà một đối tượng đã cho đề xuất. Chúng phục vụ để mô tả hình dạng của các đối tượng. Dưới đây là cách để làm điều đó:

1. Sử dụng giao diện:
interface Person {
    firstName: string;
    lastName: string;
    age: number;
    isEmployed: boolean;
}

let john: Person = {
    firstName: 'John',
    lastName: 'Doe',
    age: 25,
    isEmployed: true
};

2. Sử dụng loại bí danh:
type Car = {
    make: string;
    model: string;
    year: number;
}

let myCar: Car = {
    make: 'Toyota',
    model: 'Corolla',
    year: 2020
};

Trong cả hai trường hợp, nếu chúng ta muốn gán một đối tượng cho một biến mà không đồng ý với hình dạng được khai báo (ví dụ: một trường bị thiếu hoặc một trường extra), chúng ta sẽ nhận được lỗi biên dịch.

Tải xuống IT Flashcards Ngay bây giờ

Mở rộng kiến thức TypeScript của bạn với các thẻ học của chúng tôi.
Từ các nguyên tắc lập trình cơ bản đến nắm vững các công nghệ tiên tiến, IT Flashcards là hộ chiếu để bạn đạt được xuất sắc trong CNTT.
Tải xuống ngay và mở khóa tiềm năng của bạn trong thế giới công nghệ cạnh tranh ngày nay.