如何将深度多维数组转换为单维数组 - Javascript

Ama*_*irk 2 javascript flatten

我有一个巨大的多维数组,我想转换成一个单维数组,真正的问题是数组是动态的,它可以是一个很深的,因为它想要,我不能提前确定它.在这里发布一个例子

    var myArray =   [
        "hello", 
        ["berries", "grouped", 88, "frozen"], 
        [
            "stuff", 
            [
                "mash", 
                ["melon", "freeze", 12, "together"], 
                "people"
            ], 
            "car"
        ], 
        [
            "orange", 
            "code", 
            84, 
            ["mate", "women", "man"]
        ], 
        ["bus", "car", 345, "lorry"], 
        "world"
    ];
Run Code Online (Sandbox Code Playgroud)

它应该转换为单维数组

["hello","berries","grouped",88,"frozen","stuff","....."]
Run Code Online (Sandbox Code Playgroud)

hsz*_*hsz 5

试试:

var flat = myArray.join().split(',');
Run Code Online (Sandbox Code Playgroud)

输出:

["hello", "berries", "grouped", "88", "frozen", "stuff", "mash", "melon", "freeze", "12", "together", "people", "car", "orange", "code", "84", "mate", "women", "man", "bus", "car", "345", "lorry", "world"]
Run Code Online (Sandbox Code Playgroud)

  • 但这不是防弹,因为内容可能包含逗号 (3认同)