美文网首页js技巧相关
多维数组转一维数组

多维数组转一维数组

作者: easy_mark | 来源:发表于2018-05-11 11:29 被阅读0次

法一:使用数组map()方法,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。

```

var arr = [1,[2,[[3,4],5],6]];function unid(arr){

        var arr1 = (arr + '').split(',');//将数组转字符串后再以逗号分隔转为数组var arr2 = arr1.map(function(x){

            return Number(x);

        });

        return arr2;

}

console.log(unid(arra));

```

法二:使用apply结合concat,缺点是只能将二维转一维,多维数组则不对了。

```

const arr = [1,[2,3],[4,5]];

console.log([].concat.apply([],arr));

```

法三:将数组转为字符串再转为数组,缺点是数组中每项成字符串了

```

var arr = [1,[2,[[3,4],5],6]];

var arr2 = arr.join(',').split(',');

console.log(arr2);//["1", "2", "3", "4", "5", "6"]

```

//或

```

var c=[1,3,4,5,[6,[0,1,5],9],[2,5,[1,5]],[5]];

console.log(c.toString().split(','))

```

法四:递归

```

var arr = [1,[2,[[3,4],5],6]]; var newArr = [];

    function fun(arr){

        for(vari=0;i

            if(Array.isArray(arr[i])){

                fun(arr[i]);

            }else{

                newArr.push(arr[i]);

            }

        }

    }

fun(arr);

console.log(newArr);//[1, 2, 3, 4, 5, 6]

```

法五:reduce+递归

```

use strict';

    var arr = [1,[2,[[3,4],5],6]];

    const flatten = arr => arr.reduce(

            (acc,val) => acc.concat(Array.isArray(val)? flatten(val):val),[]

    )

    console.log(flatten(arr));//[1, 2, 3, 4, 5, 6]

```

作者:haoxl

出版:http://www.cnblogs.com/haoxl/

相关文章

  • JS方法数组方法reduce方法常用实例总结

    数组求和 数组项相乘 数组项计数 数组项去重 多维维数组转一维数组 数组对象指定字段求和 示例代码

  • 2018-10-03

    多维数组转一维 结果log

  • 多维数组

    创建多维数组 多维数组可以看成是数组的数组,二维数组是最基本的多维数组。 要创建多维数组,请将每个数组放在其自己的...

  • php多维混合数组转一维数组的函数

    php多维混合数组转一维数组的函数 php语言本身没有将多维数组转为一维数组的函数,但是我们可以自己写一个php函...

  • JS数组方法速查

    1.数组去重 2.数组合并 3.数组排序(sort) 4.多维数组转一维数组(flat) 5.过滤数组(filte...

  • 4.3~1多维数组

    多维数组可以看作是数组的数组,如果将多维数组看作是比较特殊的一维数组,那数组的元素本身就是数组。在学习多维数组之前...

  • 学习Java第五天

    数组是多个数据的集合 数组的语法 数组元素类型【】 数组名; 多维数组: 数组元素类型【】【】 数组名; 多维数组...

  • 多维数组转一维数组

    法一:使用数组map()方法,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。 ``` var a...

  • 多维数组转一维数组

  • 多维数组转一维数组

    方法一 方法二

网友评论

    本文标题:多维数组转一维数组

    本文链接:https://www.haomeiwen.com/subject/gicfdftx.html