js实现数组扁平化再原数组上
时间: 2024-06-13 11:00:29
浏览: 29
以下是在原数组上实现数组扁平化的[javascript](https://geek.csdn.net/educolumn/3e427b9940783449029130030e9c9e62?spm=1055.2569.3001.10083)[代码](https://geek.csdn.net/educolumn/1572ef9b473b4e00f6b2bf6d428b7c27?spm=1055.2569.3001.10083):
```[javascript](https://geek.csdn.net/educolumn/3e427b9940783449029130030e9c9e62?spm=1055.2569.3001.10083)
function flatten(arr) {
for (let i = 0; i < arr.[len](https://geek.csdn.net/educolumn/57d1c7022a5d69dfb6174ca472b0ff65?spm=1055.2569.3001.10083)gth; i++) {
if (Array.i[sar](https://geek.csdn.net/educolumn/06b83c763440e3f6811aa5067fdf3b27?spm=1055.2569.3001.10083)ray(arr[i])) {
arr.splice(i, 1, ...arr[i]);
return arr;
const arr = [1, [2, [3, 4], 5], 6];
flatten(arr);
console.log(arr); // 输出:[1, 2, 3, 4, 5, 6]
相关问题
js数组扁平化的实现
以下是两种JavaScript数组扁平化的实现方法:
1. 使用递归实现数组扁平化
```javascript
function flatten(arr) {
var result = [];
for (var i = 0, len = arr.length; i < len; i++) {
if (Array.isArray(arr[i])) {
result = result.concat(flatten(arr[i]));
} else {
result.push(arr[i]);
return result;
var arr = [1, [2, [3, 4, 5]]];
console.log(flatten(arr)); // [1, 2, 3, 4, 5]
```
vue实现数组扁平化
### 回答1:
Vue 中实现数组扁平化的方法有多种,下面介绍一种常用的方法:
通过使用 JavaScript 内置函数 `reduce()` 和扩展运算符 `...` 实现数组扁平化。
let arr = [1, [2, [3, 4]]];
let flatArr = arr.reduce((acc, cur) => {
return acc.concat(Array.isArray(cur) ? flatArr(cur) : cur);
}, []);
console.log(flatArr); // [1, 2, 3, 4]
```