Nâng CaoJavaScript iconJavaScript

Array.from() vs spread operator khi chuyển đổi array-like là gì?

Array.from(arrayLike) và [...arrayLike] đều tạo array từ iterable.

  • Array.from() mạnh hơn: nhận array-like không phải iterable (chỉ cần có length và indexed elements) và có tham số mapFn để transform ngay khi tạo.
  • Spread yêu cầu đúng iterable protocol.
javascript
// NodeList không phải true iterable trong mọi môi trường
Array.from(document.querySelectorAll('div')); // OK
// mapFn: tạo mảng 1-5 ngay lập tức
Array.from({ length: 5 }, (_, i) => i + 1); // [1, 2, 3, 4, 5]

Xem toàn bộ JavaScript cùng filter theo level & chủ đề con.

Mở danh sách JavaScript