Wednesday, October 9, 2024
HomeLập Trình TypeScriptDefault Paramters | Lập trình TypeScript

Default Paramters | Lập trình TypeScript

Giới thiệu

JavaScript hỗ trợ tham số mặc định từ ES2016 (hoặc ES6) với cú pháp như sau

TypeScript
function name(params1=defaultValue1,...){
// do something
}

Ví dụ cụ thể

TypeScript
function MultiplyCoefficient(x: number, y: number, factor: number = 1) {
  return (x + y) * factor;
}
console.log(MultiplyCoefficient(10, 10)); // (10+10)*1 = 20
console.log(MultiplyCoefficient(10, 10, 2)); // (10+10)*2 = 40

Ví dụ bên trên tạo một function với việc nhân hệ số hai tham số x và y, trong đó tham số factor được gán mặc định giá trị 1. Do đó nếu không đề cập đến tham số factor thì nó sẽ mặc định là 1 và ngược lại nếu được đề cập nó sẽ mang giá trị mà bạn đặt cho nó.

Lưu ý: không thể tạo một function type với default parameter

TypeScript
let sum : (x:number, y:number = 5 ) =>number; // Error

Default parameter và Optional parameters

Cả hai đều có chung một kiểu function type, ví dụ:

TypeScript
let multi1 = function (x: number, y: number = 5): number {
  return x * y;
};

let multi2 = function (x: number, y?: number): number {
  if (typeof y === "number") {
    return x * y;
  } else {
    return x;
  }
};

Cả hai đều sử dụng một function type là: (local function)(x: number, y?: number): number

Tiếp theo là một ví dụ tính số ngày có trong tháng của một năm

TypeScript
function getDay(
  year: number = new Date().getFullYear(),
  month: number
): number {
  let day = 0;
  switch (month) {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
      day = 31;
      break;
    case 4:
    case 6:
    case 9:
    case 11:
      day = 30;
      break;
    case 2:
      // leap year
      if ((year % 4 == 0 && !(year % 100 == 0)) || year % 400 == 0) day = 29;
      else day = 28;
      break;
    default:
      throw Error("Invalid month");
  }
  return day;
}

console.log(getDay(1997, 2)); // 28 
console.log(getDay(undefined, 2)); // 29

Ví dụ trên ta thấy function getDay có số năm là default , nó sẽ lấy năm mới nhất nếu bạn đề cập với từ khóa undefined, nhưng không được bỏ trống

Tóm tắt bài này bạn cần nhớ

Sử dụng default parameter với cú pháp parameter:defaultValue
Default paramter là một tham số tùy chọn
Bạn có thể dùng default parameter khi bạn nhập undefined trong funtion

Nguyễn Minh Châu
Nguyễn Minh Châuhttps://nhatkydev.com
Hi guys ! I'm a software developer. I love programming and new technologies. I create non-professional content on this website, you can only view it for reference purposes.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular