Tham số trải rộng trong javascript là gì?

JavaScript có nhiều tính năng hữu ích cho phép các nhà phát triển làm việc với các mảng và tham số hàm một cách dễ dàng. Trong chương này, các tham số còn lại và cú pháp lây lan được đề cập

Tham số còn lại cung cấp cho bạn một cách mạnh mẽ để làm việc với số lượng tham số không xác định

Để hiểu rõ hơn tham số còn lại là gì, hãy bắt đầu lại từ đầu

Bạn có thể gọi một hàm với số lượng đối số không xác định, bất kể nó có thể được định nghĩa như thế nào

Ví dụ

Tham số trải rộng trong javascript là gì?
hàm nhân javascript

hàm nhân (x, y) { trả về x * y; . nhật ký (nhân (1, 2, 3, 4, 5));

Không có lỗi nào có thể xảy ra ở đây, vì các đối số "khủng". Nhưng, chỉ có hai cái đầu tiên được tính trong đầu ra

Bạn có thể bao gồm phần còn lại của các tham số trong định nghĩa hàm bằng ba dấu chấm, như thế này. …. Nó phải được theo sau bởi tên mảng chứa chúng. Nghĩa đen của các dấu chấm là “tập hợp các tham số còn lại thành một mảng. ” Bây giờ, hãy bao gồm ví dụ này

Tham số trải rộng trong javascript là gì?
toán tử nghỉ javascript

hàm multiAll(. args) { cho kết quả = 1; . log(multiplyAll(1)); . nhật ký (nhân tất cả (1, 2)); . nhật ký (nhân tất cả (1, 2, 3));

Bạn có tùy chọn nhận các tham số đầu tiên vì các biến chỉ thu thập phần còn lại

Trong ví dụ dưới đây, hai đối số đầu tiên đưa vào các biến và phần còn lại - vào mảng bookTitles

Tham số trải rộng trong javascript là gì?
Toán tử nghỉ Javascript

chức năng chào mừng Trang web (Tên trang web, Tên sách,. bookTitles) { bảng điều khiển. log(' Chào mừng đến với ' + siteName + '’s ' + bookName + ' book' ); . log(bookTitles[0]); . log(bookTitles[1]); . nhật ký (tên sách. chiều dài);

Vui lòng lưu ý rằng các tham số còn lại phải ở cuối. Khi chúng thu thập tất cả các đối số còn lại, chúng sẽ không có tác dụng gì và chúng có thể gây ra lỗi

function f(arg1, ...rest, arg2) { // arg2 after ...rest!!!!
  // error
}

Chúng ta có thể phân biệt một đối tượng giống như mảng duy nhất, được gọi là đối số. Nó bao gồm tất cả các đối số theo chỉ mục của chúng

thích ở đây

Tham số trải rộng trong javascript là gì?
đối số Javascript

chức năng showSiteBooks () { bảng điều khiển. nhật ký (đối số. chiều dài); . nhật ký (đối số [0]); . nhật ký (đối số [1]); . 2, Javascript, Git showSiteBooks("Javascript", "Git"); . 1, Html, không xác định (không có đối số thứ hai) showSiteBooks("Html");

Tham số trải rộng trong javascript là gì?
đối số Javascript

function showSiteBooks() { // it iterable for(let arg of arguments){ console. nhật ký (arg);

Điều gây tò mò về các đối số là mặc dù nó vừa giống mảng vừa có thể lặp lại, nhưng nó không phải là một mảng. Các phương thức mảng không thể hoạt động cho nó. Vì vậy, lập luận. bản đồ(. ) không thể được gọi. Hơn nữa, nó luôn bao gồm các đối số tổng thể. Chúng không thể được chụp một phần

Sẽ là tốt nhất nếu bạn nhớ rằng các hàm mũi tên không có "đối số". Nếu bạn quyết định truy cập đối tượng của các đối số từ một hàm mũi tên, bạn có thể lấy cái này

Tham số trải rộng trong javascript là gì?
đối số Javascript

function argFunction() { let showArgs = () => console. nhật ký (đối số [0]);

Cú pháp trải rộng cho phép một mảng hoặc một chuỗi mở rộng ở những nơi không có hoặc nhiều đối số hoặc phần tử được mong đợi. Nói cách khác, nếu bạn có một chuỗi, một mảng hoặc một đối tượng và bạn muốn sử dụng tất cả các giá trị, bạn có thể trải chúng thành các lệnh gọi hàm, đối tượng mới hoặc mảng mới bằng một cú pháp ngắn. Mặc dù cú pháp spread giống như tham số nghỉ, cũng dùng dấu ba chấm…, nhưng nó lại làm ngược lại

Bất cứ khi nào bạn sử dụng. arr trong lệnh gọi hàm, nó mở rộng một đối tượng có thể lặp arr thành danh sách các đối số

Trường hợp môn Toán. tối đa trông như sau

Tham số trải rộng trong javascript là gì?
Đối số lây lan Javascript

để mảng = [6, 8, 2]; . nhật ký (Toán. tối đa (. mảng));

Bạn cũng có thể vượt qua các lần lặp khác nhau, theo cách này

Tham số trải rộng trong javascript là gì?
Đối số lây lan Javascript

để mảng1 = [2, -3, 5, 4]; . nhật ký (Toán. tối đa (. mảng1,. mảng2));

Bạn có thể tích hợp cú pháp lây lan với các giá trị bình thường, như sau

Tham số trải rộng trong javascript là gì?
Đối số lây lan Javascript

để mảng1 = [2, -3, 5, 4]; . nhật ký (Toán. tối đa (3,. mảng1, 6,. mảng2, 18));

Cũng nên sử dụng cú pháp trải rộng để hợp nhất các mảng

Tham số trải rộng trong javascript là gì?
Đối số lây lan Javascript

để mảng = [5, 4, 9]; . mảng, 3,. mảng2]; . nhật ký (đã hợp nhất);

Bạn cũng có thể sử dụng cú pháp trải rộng để biến chuỗi thành một mảng ký tự

Đây là một ví dụ

Tham số trải rộng trong javascript là gì?
Toán tử trải Javascript

hãy để str = "W3Docs"; . đăng nhập ([. str]);

Cú pháp trải rộng sử dụng các trình vòng lặp để thu thập các phần tử giống như đối với. của

Mảng. from cũng có thể được sử dụng cho tác vụ đó, vì nó chuyển đổi một iterable thành một mảng, như thế này

Tham số trải rộng trong javascript là gì?
toán tử trải rộng javascript

hãy để str = "W3Docs"; . from chuyển đổi một iterable thành một array console. nhật ký (Mảng. from(str));

Nó cho kết quả tương tự như [. str]

Nhưng sự khác biệt tinh tế giữa Array. từ (obj) và [. obj] là cái đầu tiên hoạt động trên cả iterables và array-like, nhưng cú pháp trải rộng chỉ có thể hoạt động với iterables

Toán tử trải rộng trong JavaScript là gì?

Toán tử trải rộng JavaScript (. ) cho phép chúng ta sao chép nhanh chóng tất cả hoặc một phần của một mảng hoặc đối tượng hiện có vào một mảng hoặc đối tượng khác .

Spread và Rest trong JS là gì?

Sự khác biệt chính giữa phần còn lại và trải rộng là toán tử phần còn lại đặt phần còn lại của một số giá trị cụ thể do người dùng cung cấp vào một mảng JavaScript. Nhưng cú pháp trải rộng mở rộng các lần lặp thành các phần tử riêng lẻ .

Sự khác biệt giữa toán tử lây lan và phần còn lại là gì?

trong khi toán tử trải rộng mở rộng các phần tử của một lần lặp, toán tử còn lại nén chúng. Nó thu thập một số yếu tố

Tham số còn lại và toán tử trải rộng là gì?

Các tham số còn lại được sử dụng để tạo các hàm chấp nhận bất kỳ số lượng đối số nào. Cú pháp trải rộng được sử dụng để truyền một mảng cho các hàm thường yêu cầu danh sách nhiều đối số