[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/flat [Back]  [Original]

Array.prototype.flat() - JavaScript | MDN

MDN Web Docs

View in English Always switch to English

Array.prototype.flat()

Baseline

20201

flat() Array

const arr1 = [0, 1, 2, [3, 4]];

console.log(arr1.flat());
// : Array [0, 1, 2, 3, 4]

const arr2 = [0, 1, [2, [3, [4, 5]]]];

console.log(arr2.flat());
// : Array [0, 1, 2, Array [3, Array [4, 5]]]

console.log(arr2.flat(2));
// : Array [0, 1, 2, 3, Array [4, 5]]

console.log(arr2.flat(Infinity));
// : Array [0, 1, 2, 3, 4, 5]

js
flat()
flat(depth)

depth

1

flat() this

flat() depth 1

flat() this length

js
const arr1 = [1, 2, [3, 4]];
arr1.flat();
// [1, 2, 3, 4]

const arr2 = [1, 2, [3, 4, [5, 6]]];
arr2.flat();
// [1, 2, 3, 4, [5, 6]]

const arr3 = [1, 2, [3, 4, [5, 6]]];
arr3.flat(2);
// [1, 2, 3, 4, 5, 6]

const arr4 = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]];
arr4.flat(Infinity);
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

flat()

flat()

js
const arr5 = [1, 2, , 4, 5];
console.log(arr5.flat()); // [1, 2, 4, 5]

const array = [1, , 3, ["a", , "c"]];
console.log(array.flat()); // [ 1, 3, "a", "c" ]

const array2 = [1, , 3, undefined, ["a", , ["d", , "e"]], null];
console.log(array2.flat()); // [ 1, 3, undefined, "a", ["d", empty, "e"], null ]
console.log(array2.flat(2)); // [ 1, 3, undefined, "a", "d", "e", null ]

flat()

flat() this length length depth

js
const arrayLike = {
  length: 3,
  0: [1, 2],
  // 
  1: { length: 2, 0: 3, 1: 4 },
  2: 5,
  3: 3, // length  3  flat() 
};
console.log(Array.prototype.flat.call(arrayLike));
// [ 1, 2, { '0': 3, '1': 4, length: 2 }, 5 ]

ECMAScript 2027 LanguageSpecification
# sec-array.prototype.flat


Web Proxy Viewer  |  New URL  |  Original Page