Default Parameter trong JavaScript

Default Parameter trong JavaScript

Giới thiệu

Trong nhiều trường hợp, khi định nghĩa một hàm chúng ta muốn gán giá trị mặc định cho tham số (Default Parameter) trong hàm để khi hàm được gọi nếu không có giá trị nào truyền vào cho các tham số này thì giá trị mặc định của chúng sẽ được sử dụng.

Với các phiên bản trước của ECMAScript không cung cấp sẵn tính năng gán giá trị mặc định cho tham số của hàm mà thông thường cần phải thực hiện thông qua một số bước gián tiếp khác để đạt được mục đính tương tự. Trong ECMAScript 6, tính năng gán giá trị mặc định cho tham số đã được hỗ trợ.

!= và !== trong JavaScript

Tham số mặc định

Cùng xem ví dụ sau:

function sayHi(name = 'there') {
    console.log("Hi " + name + '!');
}Code language: JavaScript (javascript)

Tham số name trong sayHi() ở đoạn code trên sẽ được gán giá trị đối số mặc định với giá trị là there. Khi gọi hàm sayHi() được định nghĩa như ở ví dụ trên, nếu như chúng ta không truyền vào giá trị (hay đối số) nào cho tham số name trong hàm này thì giá trị mặc định there sẽ được sử dụng:

sayHi('John');
// Hi John!

sayHi();
// Hi there!Code language: JavaScript (javascript)

Lưu ý: Một số ngôn ngữ lập trình khác sử dụng thuật ngữ đối số mặc định (default argument) thay vì tham số mặc định (default parameter). Mặc dù hai thuật ngữ parameter và argument (không có default phía trước) có ý nghĩa khác nhau, default argument và default parameter trong ngữ cảnh này có ý nghĩa như nhau.

5 cách học JavaScript nhanh cho người mới bắt đầu

Đối số undefined

Trong khi gọi hàm, với các tham số được khai báo với giá trị đối số mặc định thì việc sử dụng đối số với giá trị là undefined tương đương với việc không truyền vào đối số (hay sử dụng đối số mặc định).

function sayHi(name = 'there') {
    console.log("Hi " + name + '!');
    console.log(typeof name);
}

sayHi();
// Hi there!
// string

sayHi(undefined);
// Hi there!
// stringCode language: JavaScript (javascript)

Ngoài undefined ra thì tất cả các giá trị khác sử dụng cho tham số vẫn được sử dụng thông thường thay vì sử dụng đối số mặc định:

sayHi(null);

// Hi null!
// object

sayHi(false);
// Hi false!
// booleanCode language: JavaScript (javascript)

Nguồn: www.codehub.com.vn/ES6-Co-Ban/ES6-Default-Parameter

Các bạn có thể tham khảo các bài viết hay về JavaScript tại đây.


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Leave a Reply

Your email address will not be published. Required fields are marked *