Menu
CoddyTech

Tham số có tên

Thuộc phần Kiến thức cơ bản trong hành trình Dart của Coddy. Bài học 73 trên 94.

Tham số được đặt tên trong Dart cho phép bạn chỉ định tham số của hàm theo tên thay vì theo vị trí. Bạn định nghĩa chúng bằng dấu ngoặc nhọn {} trong phần khai báo hàm. Theo mặc định, chúng là tùy chọn. Khi lời gọi hàm không truyền giá trị cho một tham số được đặt tên tùy chọn không có giá trị mặc định, tham số đó sẽ có giá trị null, vì vậy kiểu dữ liệu của nó phải cho phép giá trị null, chẳng hạn như String? hoặc int?.

Tạo một hàm có tham số được đặt tên:

void greet({String? name, int? age}) {
  print('Hello, $name! You are $age years old.');
}

void main() {
  greet(name: 'Dart', age: 12);
}

Sau khi chạy đoạn code trên, kết quả sẽ là:

Hello, Dart! You are 12 years old.

Khi gọi một hàm (function) có tham số (parameter) được đặt tên, bạn viết tên tham số theo sau là dấu hai chấm:

void main() {
  // Các tham số (parameters) có thể theo bất kỳ thứ tự nào
  greet(age: 30, name: 'Alice');
}

Sau khi chạy đoạn code trên, đầu ra sẽ là:

Hello, Alice! You are 30 years old.
challenge icon

Thử thách

Người mới

Trong thử thách này, bạn sẽ luyện tập cách dùng tham số có tên trong Dart. Tham số có tên giúp lời gọi hàm dễ đọc hơn bằng cách chỉ rõ tên tham số khi gọi hàm.

Hoàn thiện hàm greetUser bằng cách thêm tham số có tên name và age. Sau đó gọi hàm với các giá trị đã cho.

Đầu ra dự kiến:

Hello, Alice! You are 25 years old.

Tự làm thử

void main() {
  // Các giá trị này đã được định nghĩa sẵn cho bạn
  String userName = 'Alice';
  int userAge = 25;
  
  // TODO: Gọi hàm (function) greetUser bằng các tham số có tên
  // Truyền userName cho tham số name và userAge cho tham số age
  
  
  // Hàm được định nghĩa bên dưới
}

// TODO: Sửa hàm này để dùng tham số có tên thay cho tham số theo vị trí
// Gợi ý: Đặt các tham số trong dấu ngoặc nhọn {}
void greetUser({required String name, required int age}) {
  print('Hello, $name! You are $age years old.');
}
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 Kiến thức cơ bản

Tự luyện tập: Trình biên dịch Dart online