获取多维数组的值(Node.js/JavaScript)

获取多维数组的值(Node.js/JavaScript),javascript,node.js,ecmascript-6,Javascript,Node.js,Ecmascript 6,嘿,我在polygons.js中找到了这个对象: 当我调用console.log(polygons[1].geometry)时我只得到这个结果,而不是数字: { coordinates: [ [ [Array], [Array] ] ] } 你能帮我吗?非常感谢。如果您想访问坐标: var firstCoords = polygons[0].geometry.coordinates[0][0]; //[9.123553, 48.71568] var s

嘿,我在polygons.js中找到了这个对象:

当我调用
console.log(polygons[1].geometry)时我只得到这个结果,而不是数字:

{ 
  coordinates: 
   [ [ [Array],
       [Array] 
    ] ]
}

你能帮我吗?非常感谢。

如果您想访问坐标:

 var firstCoords = polygons[0].geometry.coordinates[0][0]; //[9.123553, 48.71568]
 var secondCoords = polygons[0].geometry.coordinates[0][1]; //[ 9.119548, 48.71526 ]
如果要循环浏览它们,请执行以下操作:

 for(var i = 0; i < polygons[0].geometry.coordinates[0].length; i++){
     //do whatever you want with the coordinates
 }      
for(var i=0;i
更改
console.log(多边形[1]。几何体)
到这个
console.log(JSON.stringify(polygons[1].geometry,null,4))


应该可以做到这一点。

您可以使用
JSON.stringify()
将对象转换为字符串

不管怎样,在这两种情况下都有效:

var多边形=[
{
“_id”:“12345”,
“几何学”:{
“坐标”:[[
[9.123553, 48.71568],
[ 9.119548, 48.71526 ]
]]
}
},
{
“_id”:“67890”,
“几何学”:{
“坐标”:[[
[ 9.090445, 48.715736 ],
[ 9.089583, 48.715687 ]
]]
}
}
]
console.log(polygons[1].geometry);

log(JSON.stringify(polygons[1].geometry))如果您只想打印每个多边形的坐标,以下类似内容可能会有所帮助:

var多边形=[{
“_id”:“12345”,
“几何学”:{
“坐标”:[
[
[9.123553, 48.71568],
[9.119548, 48.71526]
]
]
}
},
{
“_id”:“67890”,
“几何学”:{
“坐标”:[
[
[9.090445, 48.715736],
[9.089583, 48.715687]
]
]
}
}
];
函数打印坐标(多边形){
//迭代坐标组并打印出polygo中的每个坐标
polygon.geometry.coordinates.map(coordinateGroup=>{
coordinateGroup.map(coordinatePair=>{
log(`${coordinatePair[0]},${coordinatePair[1]}`)
});
});
}
打印坐标(多边形[0]);

打印坐标(多边形[1])当我调用console.log(polygons[1].geometry)
时,它将返回一个数组,该数组包含另一个数组,该数组包含两个具有值的数组。我的问题的标题已编辑。再次抱歉@谢谢,我想我解决了这个小问题!这…将对象转换为JSON,而不是返回任何值。是的,它将对象及其所有值转换为字符串,以便console.log()可以打印整个对象的内容,而不是数组上toString()方法的结果。请尝试运行它。。。它不仅能工作,而且能以清晰易读的格式打印出来。我知道它的作用。它仍然不能解决发布的问题——不是“如何设置显示格式”,而是“如何从数组中获取值”。后者总是与在应用程序中使用上述值相关联,不仅能够看到它们并记下它们。如果你只看文章的标题,那么是的,但是如果你阅读了文章的内容,那么你将看到该人询问特定命令(console.log)有一个特定的结果,而不是他们特别想要的结果。“当我调用console.log(polygons[1].geometry)时,我只得到这个结果,而不是数字”,然后是它们的示例输出,显示打印对象,并使用[Array]“而不是数字”。我提供的解决方案会给他们一个结果,结果是他们看到的数字[Array],这就是他们显示的问题。感谢您提供此解决方案。结果应该是这样的数组:
[{u id:“12345”,“坐标”:[[9.123553,48.71568],[9.119548,48.71526]]},{{u id:“67890”,“坐标”:[[9.090445,48.715736],[9.089583,48.715687]]}
 for(var i = 0; i < polygons[0].geometry.coordinates[0].length; i++){
     //do whatever you want with the coordinates
 }