Functions trong TypeScript cho phép bạn định nghĩa một khối mã có thể được gọi lại nhiều lần, giúp bạn tổ chức và tái sử dụng mã nguồn hiệu quả. TypeScript mở rộng JavaScript bằng cách cho phép bạn chỉ định kiểu cho các tham số và kiểu trả về của hàm, giúp phát hiện lỗi sớm trong quá trình phát triển.
Bài viết này là một phần của chuỗi học TypeScript trên "codetuthub.com", cùng với các bài học khác như TypeScript Simple Types, TypeScript Tuples, và TypeScript Enums.
1. Khai báo hàm cơ bản
Bạn có thể định nghĩa một hàm trong TypeScript bằng cú pháp tương tự như trong JavaScript, nhưng với khả năng chỉ định kiểu cho các tham số và kiểu trả về.
Ví dụ
function greet(name: string): string {
return `Hello, ${name}!`;
}
console.log(greet("Alice")); // Kết quả: "Hello, Alice!"Trong ví dụ này, hàm greet nhận một tham số name kiểu chuỗi và trả về một giá trị kiểu chuỗi.
2. Kiểu trả về
Bạn có thể chỉ định kiểu trả về cho hàm bằng cách sử dụng dấu hai chấm : sau danh sách tham số.
Ví dụ
function add(a: number, b: number): number {
return a + b;
}
console.log(add(5, 10)); // Kết quả: 15Trong ví dụ này, hàm add nhận hai tham số kiểu số và trả về một giá trị kiểu số.
3. Tham số tùy chọn
Bạn có thể đánh dấu các tham số là tùy chọn bằng cách sử dụng dấu hỏi ?. Nếu tham số tùy chọn không được cung cấp, nó sẽ có giá trị undefined.
Ví dụ
function log(message: string, prefix?: string): void {
if (prefix) {
console.log(`${prefix}: ${message}`);
} else {
console.log(message);
}
}
log("Hello, World!"); // Kết quả: "Hello, World!"
log("Hello, World!", "INFO"); // Kết quả: "INFO: Hello, World!"4. Tham số mặc định
TypeScript cho phép bạn chỉ định giá trị mặc định cho các tham số. Nếu tham số không được cung cấp, giá trị mặc định sẽ được sử dụng.
Ví dụ
function multiply(a: number, b: number = 1): number {
return a * b;
}
console.log(multiply(5)); // Kết quả: 5
console.log(multiply(5, 2)); // Kết quả: 105. Hàm ẩn danh và hàm lập trình cao
TypeScript hỗ trợ hàm ẩn danh, cho phép bạn định nghĩa hàm mà không cần tên. Hàm lập trình cao là hàm có thể nhận hàm khác làm tham số hoặc trả về một hàm.
Ví dụ về hàm ẩn danh
const square = function (x: number): number {
return x * x;
};
console.log(square(4)); // Kết quả: 16Ví dụ về hàm lập trình cao
function createMultiplier(factor: number): (x: number) => number {
return function (x: number): number {
return x * factor;
};
}
const double = createMultiplier(2);
console.log(double(5)); // Kết quả: 106. Kiểu hàm
TypeScript cho phép bạn định nghĩa kiểu cho các hàm. Điều này giúp bạn xác định rõ hơn các tham số và kiểu trả về của hàm.
Ví dụ
type MathOperation = (a: number, b: number) => number;
const add: MathOperation = (a, b) => a + b;
const subtract: MathOperation = (a, b) => a - b;
console.log(add(5, 3)); // Kết quả: 8
console.log(subtract(5, 3)); // Kết quả: 27. Kết luận
Functions trong TypeScript là một công cụ mạnh mẽ cho phép bạn tổ chức mã nguồn và tăng cường tính linh hoạt cho ứng dụng của mình. Bằng cách sử dụng các tính năng như tham số kiểu, tham số tùy chọn, và hàm lập trình cao, bạn có thể viết mã dễ đọc và dễ bảo trì hơn. Để tìm hiểu thêm về TypeScript, hãy tham khảo các bài học liên quan trên "codetuthub.com" như TypeScript Simple Types, TypeScript Tuples, và TypeScript Enums.








