zoukankan      html  css  js  c++  java
  • js 多维数组转换成一维

    var arr = [ 1, [2], [[[3]]], [4, [5] ] ];
    
    function unidimensionalArray (arr) {
      return (arr + '').split(',').map(x => Number(x));
    }
    
    console.log(unidimensionalArray(arr)); // [ 1, 2, 3, 4, 5 ]
    
    // 以上针对数字数组的, 下面是一个针对多类型的
    var obj = {};
    var func = function() {};
    var u = undefined;
    var nan = NaN;
    var num = 1;
    var str = 'boy';
    var bool = true;
    var arr = [bool, [str], [[num]], u, [[[nan, func]]], obj];
    
    var unidimensionalArray = function(arr) {
    	return arr.reduce((p1, p2) => p1.concat(Array.isArray(p2) ? unidimensionalArray(p2) : p2), []);
    };
    console.log(unidimensionalArray(arr)); // [ true, 'boy', 1, undefined, NaN, [Function: func], {} ]
    

      

      

  • 相关阅读:
    Ceph
    linux五天光速入门
    shell编程
    Docker&K8S&持续集成与容器管理--系列教程
    openstack系列
    爬虫快速入门
    python奇闻杂技
    机器学习
    数据分析
    量化分析
  • 原文地址:https://www.cnblogs.com/ax-null/p/6706493.html
Copyright © 2011-2022 走看看