console
var arr = [1,2,3,[5,4,3,4,[1,3,45]],89]
const fun = (data) => {
return data.reduce((pre, cur) => {
return pre.concat(Array.isArray(cur) ? fun(cur) : cur)
}, [])
}
console.log(fun(arr))
console.log(arr.flat(Infinity))
console.log(JSON.stringify(arr).replace(/\[|\]/g, '').split(','))
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=, initial-scale=">
<meta http-equiv="X-UA-Compatible" content="">
<title>reduce</title>
</head>
<body>
</body>
</html>