Sử dụng rest parameters trong javascript

Giới thiệu về rest parameters ES6 cung cấp một loại tham số mới gọi là rest parameters, cái có tiền tố là 3 dấu chấm (…) Ví dụ: functionfn(a,b,...args){return args;} Ở ví dụ trên tham số cuối cùng trong hàm fn() là args và được bắt đầu bằng 3 dấu chấm (…) , nó được

Giới thiệu về rest parameters

ES6 cung cấp một loại tham số mới gọi là rest parameters, cái có tiền tố là 3 dấu chấm (…)
Ví dụ:

functionfn(a,b,...args){return args;}

Ở ví dụ trên tham số cuối cùng trong hàm fn() là args và được bắt đầu bằng 3 dấu chấm (…) , nó được gọi là một rest parameters
Tất cả các đối số bạn truyền trong hàm sẽ ánh xạ đến danh sách các parameters, đối số đầu tiền sẽ ứng với tham số a, đối số thứ 2 sẽ ứng với tham số b, đối số thử 3, 4 và còn lại sẽ được lưu trong rest parameter args như một mảng(hay còn gọi là tham số args)
Ví dụ:

var result =fn(1,2,3,"A","B","C");
console.log(result);

Output:
Mảng args sẽ lưu mảng dữ liệu như bên dưới

[3,'A','B','C']

Nếu bạn chỉ truyền 2 đối số vào hàm fn() thì rest parameter sẽ nhận kết quả là mảng [] như ví dụ bên dưới

var result =fn(1,2);
console.log(result);

Kết quả của biến args sẽ là:

[]

Khi sử dụng rest parameter thì bạn bạn phải đặt rest parameter ở cuối danh sách tham số của hàm thì mới sử dụng được nhé, nếu không đặt ở cuối thì nó sẽ báo lỗi như bên dưới.
Ví dụ:

functionfn(a,...rest, b){// error}

Error:

SyntaxError: Rest parameter must be last formal parameter

Tiếp theo các bạn hãy xem ví dụ tính tổng bên dưới.

functionsum(...args){let total =0;for(const a of args){
        total += a;}return total;}var total =sum(1,2,3);
console.log(total);

Output:

6

Nguồn: viblo.asia

Bài viết liên quan

9 Mẹo lập trình Web “ẩn mình” giúp tiết kiệm hàng giờ đồng hồ

Hầu hết các lập trình viên (kể cả những người giỏi) đều tốn thời gian x

Can GPT-4o Generate Images? All You Need to Know about GPT-4o-image

OpenAI‘s GPT-4o, introduced on March 25, 2025, has revolutionized the way we create visual con

Khi nào nên dùng main, section, article, header, footer, và aside trong HTML5

HTML5 đã giới thiệu các thẻ ngữ nghĩa giúp cấu trúc nội dung web một cách có

So sánh Webhook và API: Khi nào nên sử dụng?

Trong lĩnh vực công nghệ thông tin và phát triển phần mềm, Webhook và API là hai th