JavaScript vượt qua mảng giá trị

Nếu bạn muốn chuyển một mảng vào một hàm matrixdic. Bạn có thể sử dụng trải rộng ES6 để biến mảng đó thành danh sách các đối số. Yay, sạch sẽ hơn rất nhiều và không có null vô ích so với cách áp dụng cũ 👏

function sandwich[a, b, c] {
  console.log[a]; // '🍞'
  console.log[b]; // '🥬'
  console.log[c]; // '🥓'
}

const food = ['🍞', '🥬', '🥓'];

// Old way
sandwich.apply[null, food];

// ✅ ES6 way
sandwich[...food];

  • Sử dụng nó với các hàm Toán học
    • Ví dụ. Tìm Số Lớn Nhất
    • Giải thích sự lây lan theo thuật ngữ không dành cho nhà phát triển
  • Truyền nhiều mảng dưới dạng đối số hàm
  • Hàm biến thiên là gì?
  • Tài nguyên

# Sử dụng nó với các hàm
const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
2

Khả năng biến một mảng thành một danh sách các đối số cực kỳ tiện dụng với các hàm

const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
2

# Ví dụ. Tìm Số Lớn Nhất

Giả sử bạn muốn tìm số lớn nhất bằng cách sử dụng hàm

const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
0

const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7

Nhưng hiếm khi, bạn sẽ chuyển các giá trị riêng lẻ. Nhiều khả năng, bạn sẽ muốn tìm phần tử lớn nhất trong một mảng. Vì vậy, câu hỏi bây giờ là, làm thế nào để bạn chuyển một mảng giá trị vào một hàm chấp nhận các đối số riêng lẻ chứ KHÔNG phải một mảng?

Điều này sẽ là khủng khiếp

const numbers = [5, 7, 3];

// 🤮 Yuck!
Math.max[numbers[0], numbers[1], numbers[2]];

// ❌ And this won't work
Math.max[numbers]; // NaN

May mắn cho chúng tôi, chúng tôi có thể sử dụng toán tử Spread của ES6

const numbers = [5, 7, 3];

// 😍 Much Better!
Math.max[...numbers]; // 7

Điều mà

const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
1 đang làm ở đây là lấy phần tử mảng và mở rộng hoặc giải nén nó thành một danh sách các đối số cho hàm variadic của chúng ta

const numbers = [5, 7, 3];

console.log[...numbers]; // 5 7 3

# Giải thích về
const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
1 bằng thuật ngữ không dành cho nhà phát triển

Nếu bạn thấy điều lan truyền này vẫn còn khó hiểu. Có lẽ hãy để tôi cố gắng giải thích nó với những con búp bê làm tổ của Nga. Vì vậy, tôi thích coi mảng như những con búp bê làm tổ của Nga. Và những gì lây lan làm là

  1. Nó giải nén [trải rộng] những con búp bê lồng nhau thành những con búp bê riêng lẻ
  2. Và bây giờ bạn có tất cả các hình nhân [đối số] riêng lẻ này để đặt gọn gàng trong tủ trưng bày [chức năng] của bạn

Không chắc chắn nếu lời giải thích này giúp?

# Truyền nhiều mảng dưới dạng đối số hàm

Một khả năng lây lan siêu cường khác là kết hợp các mảng

________số 8

Vì vậy, chúng ta có thể sử dụng siêu năng lực này để truyền nhiều mảng làm đối số hàm 💪

const one = [1, 2, 3];
const two = [4, 5, 6];

Math.max[...one, ...two]; // 6

Đối với những người quan tâm, tự hỏi nếu bạn có thể vượt qua 3 mảng. Vâng, bạn cá là. Nó giống như chú thỏ cung cấp năng lượng, nó cứ đi và đi mãi. [Bài đăng này không được tài trợ bởi Energizer lol. Nhưng điều đó có thể thay đổi, đánh tôi lên Energizer. Tôi muốn một số tiền tài trợ 😂]

const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
0

# Hàm biến thiên là gì?

Vì vậy, bạn có thể nhận thấy tôi sử dụng thuật ngữ hàm biến thiên. Những người làm khoa học máy tính có lẽ đã nghe thuật ngữ này. Nhưng đối với những cool bee còn lại như mình 😝 thì có lẽ sẽ không mấy quen thuộc. Hàm biến thiên là hàm chấp nhận số lượng đối số vô hạn hoặc có thể thay đổi. Và hàm

const largest = Math.max[5, 7, 3, 4];

console.log[largest]; // 7
0 là một trong những hàm biến thiên đó

Làm cách nào để chuyển các giá trị trong mảng trong JavaScript?

Phương pháp 1. Sử dụng phương thức apply[] . Phương thức apply[] được sử dụng để gọi một hàm với các đối số đã cho là một mảng hoặc đối tượng giống như mảng. Nó chứa hai tham số. Giá trị này cung cấp lời gọi hàm và mảng đối số chứa mảng đối số được truyền.

JavaScript có chuyển mảng theo tham chiếu hoặc giá trị không?

Trong JavaScript, mảng và đối tượng tuân theo thuộc tính chuyển qua thuộc tính tham chiếu . Trong Truyền theo tham chiếu, các tham số được truyền dưới dạng đối số không tạo bản sao của chính nó, nó đề cập đến giá trị ban đầu nên những thay đổi được thực hiện bên trong hàm sẽ ảnh hưởng đến giá trị ban đầu.

Làm cách nào để chuyển mảng theo tham chiếu trong JavaScript?

Mảng và Đối tượng được truyền theo tham chiếu hoặc theo giá trị dựa trên các điều kiện này. .
nếu bạn đang đặt giá trị của một đối tượng hoặc mảng thì đó là Truyền theo giá trị. đối tượng1 = { chỗ dựa. "xe ô tô" };
nếu bạn đang thay đổi giá trị thuộc tính của một đối tượng hoặc mảng thì đó là Truyền theo tham chiếu. đối tượng1

Bạn có thể chuyển một mảng dưới dạng tham số trong JavaScript không?

Như vậy, Javascript cung cấp cho chúng ta hai cách để sử dụng mảng làm tham số hàm trong Javascript - apply[] và toán tử trải rộng .

Chủ Đề