Trong bài viết này, ta sẽ cùng tìm hiểu về các tham số mặc định trong JavaScript cùng với sự trợ giúp của các ví dụ dẫn chứng.
Trong khi lập trình, ta sẽ phải truyền các đối số cho các hàm đã được định nghĩa và yêu cầu các đối số này. Tuy nhiên, ta có thể định nghĩa các hàm sử dụng các đối số mặc định. Tức là ta sẽ có thể hoặc không cần phải truyền giá trị cho các tham số mặc định đã được định nghĩa. Ta sẽ cùng đi tìm hiểu về khái niệm này.
Tham số mặc định trong JavaScript
Khái niệm về các tham số mặc định là một tính năng mới được giới thiệu trong phiên bản JavaScript ES6. Điều này cho phép chúng ta truyền các giá trị mặc định cho các tham số của hàm.
Ví dụ: Sử dụng các giá trị mặc định cho các tham số được định nghĩa bên trong hàm.
1 2 3 4 5 6 |
function phep_chia(a = 6, b = 3) { return a / b; } console.log(phep_chia(4, 2)); console.log(phep_chia(9)); console.log(phep_chia()); |
Kết quả:
1 2 3 |
2 3 2 |
Trong ví dụ trên, giá trị mặc định của a là 6 và giá trị mặc định của b là 3. Trong đó:
- Câu lệnh phep_chia(4, 2): Khi truyền cả hai đối số, a nhận giá trị 4 và b nhận giá trị là 2.
- Câu lệnh phep_chia(9): Khi 9 được chuyển cho hàm phep_chia(), a nhận giá trị là 9 và b sẽ nhận giá trị mặc định 3.
- Câu lệnh phep_chia(): Khi không có đối số nào được truyền cho hàm, a sẽ nhận giá trị mặc định 6 và b sẽ nhận giá trị mặc định là 3.
Sử dụng biểu thức làm giá trị mặc định
Ngoài ra, ta cũng có thể cung cấp các biểu thức làm giá trị mặc định.
Ví dụ 1: Truyền tham số làm giá trị mặc định.
1 2 3 4 |
function phep_chia(a = 6, b = a + 2) { console.log(a / b); } phep_chia(); |
Kết quả:
1 |
0.75 |
Trong chương trình trên:
- Giá trị mặc định của a là 6
- Giá trị mặc định của b được đặt thành tham số a + 2
Nếu ta tham chiếu đến tham số chưa được khởi tạo, ta sẽ gặp lỗi.
Ví dụ:
1 2 3 4 |
function phep_chia(b = a + 2, a) { console.log(a / b); } phep_chia(); |
Ví dụ 2: Truyền giá trị hàm làm giá trị mặc định.
1 2 3 4 5 |
const a = () => 100; const phep_chia = function(c, b = c + a() ) { console.log(c/b); } phep_chia(10); |
Kết quả:
1 |
0.09090909090909091 |
Trong chương trình trên, giá trị 10 được truyền cho hàm.
Truyền giá trị không xác định (undefined)
Trong JavaScript, khi ta truyền giá trị undefined (không xác định) cho tham số mặc định của hàm, hàm sẽ nhận giá trị mặc định.
Ví dụ: Truyền các giá trị undefined cho hàm.
1 2 3 4 |
function phep_chia(a = 10, b = 2) { console.log(a/b); } phep_chia(undefined, undefined); |
Kết quả:
1 |
5 |
Trên đây là khái niệm và ví dụ cơ bản về tham số mặc định trong JavaScript. Hy vọng mọi người có thể nắm được cơ bản về khái niệm này và áp dụng thành công vào trong chương trình của mình. Mọi người hãy tiếp tục theo dõi các bài tiếp theo và cập nhật các bài tiếp theo về lập trình JavaScript trên tek4 nhé!
P/s: Cảm ơn mọi người đã tin tưởng tek4!