Trung BìnhJavaScript iconJavaScript

Flatten nested array (không dùng Array.flat)?

Flatten nested array bằng đệ quy reduce hoặc iterative spread.

js
// Recursive
function flatten(arr) {
  return arr.reduce((acc, item) =>
    acc.concat(Array.isArray(item) ? flatten(item) : item), []);
}
// Iterative
while (arr.some(Array.isArray)) arr = [].concat(...arr);

Phỏng vấn thường hỏi để test hiểu recursion và Array methods.

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

Mở danh sách JavaScript