[1, 2, 3, [1, 2, 3, [1, 2, 3, [1, 2, 3, [1, 2, 3, [1, 2, 3, [
], 4, 5], 4,
[1, 2, 3, [], 4, 5],
5], 4, 5], 4, 5], 4, 5],
[1, 2, 3, [], 4, 5],
4, 5]
let x = [1, 2, 3, [1, 2, 3, [1, 2, 3, [1, 2, 3, [1, 2, 3, [1, 2, 3, [
], 4, 5], 4,
[1, 2, 3, [], 4, 5],
5], 4, 5], 4, 5], 4, 5],
[1, 2, 3, [], 4, 5],
4, 5];
console.log(typeof x) // внезапно "object"
в такой объект
function convert(data) {
return Array.isArray(data) ? Object.assign({}, data.map(convert)) : data
}
// но там же под капотом все равно перебор
console.log(convert(arr))
https://jsfiddle.net/8cLs4601/