Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript:如何访问多维数组?_Javascript_Arrays_Multidimensional Array - Fatal编程技术网

JavaScript:如何访问多维数组?

JavaScript:如何访问多维数组?,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我已经创建了一个多维数组,通过将数组推到另一个数组中,但现在我无法从中检索数据,我有一个包含它的变量,但现在我需要处理它,我无法通过以下任何方式获取值: 一, 二, 我尝试了很多其他的方法,但都得到了相同的结果,“未定义”,我真的很讨厌这个词。我并不着急,但这让我很好奇,因为我已经尝试了几天了,我被困在这里 谁能帮我一把吗?谢谢斯塔克尔斯 数组看起来像这样 [ [ { "origin": "4", "destination"

我已经创建了一个多维数组,通过将数组推到另一个数组中,但现在我无法从中检索数据,我有一个包含它的变量,但现在我需要处理它,我无法通过以下任何方式获取值:

一,

二,

我尝试了很多其他的方法,但都得到了相同的结果,“未定义”,我真的很讨厌这个词。我并不着急,但这让我很好奇,因为我已经尝试了几天了,我被困在这里

谁能帮我一把吗?谢谢斯塔克尔斯

数组看起来像这样

[
    [
        {
            "origin": "4",
            "destination": "0",
            "scales": 1
        }
    ],
    [
        {
            "option": 1,
            "origin": "4",
            "destination": "3",
            "line": "l3",
            "direction": "3",
            "stops": "4,3",
            "stopcount": 2
        }
    ],
    [
        {
            "option": 1,
            "origin": "3",
            "destination": "0",
            "line": "l2",
            "direction": "0",
            "stops": "3,2,0",
            "stopcount": 3
        },
        {
            "option": 2,
            "origin": "3",
            "destination": "0",
            "line": "l0",
            "direction": "0",
            "stops": "3,0",
            "stopcount": 2
        }
    ]
]

首先,你必须展平这个数组的
数组
(多维数组)

要获得一维
数组

flatten( myArrayVariable )
[Object, Object, Object, Object]
在这一点上,你有它

flatten(arr)[0]["origin"]
"4"
根据需要执行的操作,您可以使用
forEach

flatten(arr).forEach(function(item) { console.log( item ) })
要遍历它:

Object {origin: "4", destination: "0", scales: 1}
Object {option: 1, origin: "4", destination: "3", line: "l3", direction: "3"…}
Object {option: 1, origin: "3", destination: "0", line: "l2", direction: "0"…}
Object {option: 2, origin: "3", destination: "0", line: "l0", direction: "0"…}

首先,你必须展平这个数组的
数组
(多维数组)

要获得一维
数组

flatten( myArrayVariable )
[Object, Object, Object, Object]
在这一点上,你有它

flatten(arr)[0]["origin"]
"4"
根据需要执行的操作,您可以使用
forEach

flatten(arr).forEach(function(item) { console.log( item ) })
要遍历它:

Object {origin: "4", destination: "0", scales: 1}
Object {option: 1, origin: "4", destination: "3", line: "l3", direction: "3"…}
Object {option: 1, origin: "3", destination: "0", line: "l2", direction: "0"…}
Object {option: 2, origin: "3", destination: "0", line: "l0", direction: "0"…}

数据周围有一组额外的括号,因此它是两个数组。要访问它,您需要
myVar[0][0]。origin
它工作正常!答案一直在那里。谢谢,这是一个3d数组吗?数据周围有一组额外的括号,所以它是两个数组。要访问它,您需要
myVar[0][0]。origin
它工作正常!答案一直在那里。谢谢,这是一个3d数组吗?为了让
var展平=myVar[0]
@charlietfl更好地成为泛型,似乎需要做很多额外的工作。永远不知道他可能有类似
[1,2,[1,2],[3],[4,5]
等嵌套结构。我没有看到任何证据。。。就像是建议你需要一直这样做。。。。“以防万一”似乎需要做很多额外的工作才能让
var展平=myVar[0]
@charlietfl更好地成为泛型永远不知道他可能有嵌套结构,比如
[1,2[1,2],[3],[4,5]
等等。我没有看到任何证据。。。就像是建议你需要一直这样做。。。。“以防万一”