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.Thử thách
Người mớiTrong 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.');
}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
4Các toán tử phần 2
Toán tử so sánhPhép AND logicPhép OR logicPhép NOT logicToán tử kiểm tra kiểuÔn tập: So sánh10Bộ sưu tập: kiến thức cơ bản về ánh xạ
Ánh xạ là gì?Tạo ánh xạTruy cập giá trị bằng khóaCặp khóa và giá trịLấy kích thước ánh xạLấy các khóaLấy các giá trịKiểm tra khóa có tồn tại không13An toàn với giá trị null chuyên sâu
Tìm hiểu giá trị nullKiểu dữ liệu nullableKiểu dữ liệu non-nullableToán tử khẳng định non-nullKhởi tạo muộnÔn tập: xử lý null an toàn16Thử thách về kiến thức cơ bản
Thử thách: Danh sách phép tínhThử thách: Tính tổng các sốThử thách: Tìm tích2Biến và kiểu dữ liệu cơ bản
Biến là gì?ChuỗiSố nguyên (int)Số thực (double)Giá trị logic (bool)Suy luận kiểu dữ liệu với 'var'Biến finalBiến hằng sốQuy tắc đặt tênAn toàn với null cơ bảnÔn tập: khai báo biến8Luồng điều khiển: vòng lặp
Vòng lặp forVòng lặp whileVòng lặp do-whileDùng break trong vòng lặpDùng continue trong vòng lặpÔn tập: lặp lại code11Hàm cơ bản
Hàm là gì?Định nghĩa hàm cơ bảnGọi hàmHàm có tham sốHàm trả về giá trịTừ khóa 'void'Cú pháp mũi tênÔn tập: hàm đơn giản14Chuyển đổi kiểu dữ liệu
Chuyển chuỗi thành số nguyênChuyển chuỗi thành số thựcChuyển số thành chuỗiXử lý lỗi chuyển đổi3Các toán tử, phần 1
Toán tử số họcPhép chia số nguyênToán tử moduloToán tử tăng và giảmToán tử gán rút gọnÔn tập: phép tính đơn giản6Luồng điều khiển: ra quyết định
Câu lệnh 'if'Câu lệnh 'else'Câu lệnh 'else if'Ôn tập: quyết định đơn giảnCâu lệnh 'if' lồng nhauCâu lệnh 'switch'9Cơ bản về danh sách trong Collections
Danh sách là gì?Tạo danh sáchTruy cập theo chỉ sốLấy độ dài danh sáchThêm phần tửXóa phần tửKiểm tra danh sách có rỗng khôngDuyệt qua danh sách12Hàm nâng cao
Tham số vị trí tùy chọnTham số có tênTham số có tên bắt buộcGiá trị tham số mặc địnhÔn tập: tham số của hàmTự luyện tập: Trình biên dịch Dart online