【发布时间】:2015-11-11 01:40:12
【问题描述】:
我有一个返回人口普查数据的网址。当我拨打电话时,我收到了以下回复:
[["PCT012A015","PCT012A119","state"],
["20604","19526","01"]]
由于没有名称,我遇到的问题是我无法弄清楚如何定义从特定“列”获取所有值的路径。
【问题讨论】:
-
您使用哪种语言处理数据?无论哪种方式,只需使用列的索引即可。
我有一个返回人口普查数据的网址。当我拨打电话时,我收到了以下回复:
[["PCT012A015","PCT012A119","state"],
["20604","19526","01"]]
由于没有名称,我遇到的问题是我无法弄清楚如何定义从特定“列”获取所有值的路径。
【问题讨论】:
当处理一个数组而不是一个对象时,你有索引而不是键名。您可以使用索引访问数组中的项目。例如,在一个数组中定义如下:
var a = { 'a', 'b', 'c' }
您可以使用数组中的索引访问第二个元素“b”,如下所示:a[1]
请记住,这些索引从零 (0) 开始。因此,要访问此数组中的第一个元素,请访问 a[0]。第二个元素位于a[1],依此类推。 a.length 表示数组中有多少项,它在数值上总是比数组中的最高索引大(加一)。
假设您提供的 JSON 示例中的每一行都是一行,并且每行中的项目是列,那么您可以使用循环访问给定列中的每个项目。
假设我们想要每个数组的第二项,并且我们想将它存储在一个新数组中,secondValInEach。
获取 JSON 对象并将其分配给一个变量,然后对其进行迭代。
var example = [["PCT012A015","PCT012A119","state"],["20604","19526","01"]]
var secondValInEach = []
example.forEach(function(entry){
secondValInEach.push(entry[1])
})
代码完成后,secondValInEach 中应该有以下内容:
["PCT012A119", "19526"]
【讨论】: