gpt4 book ai didi

Javascript 通过从对象解析数据来解决数组问题

转载 作者:行者123 更新时间:2023-11-30 09:44:38 24 4
gpt4 key购买 nike

我目前正在从事一个需要使用美国人口普查局 API 的项目。我的大部分代码都在我的项目部分工作,但是,我遇到了一个我不明白的小问题。我想要做的是获取 113 个对象,从每个对象中解析一个属性,然后将所有 113 个属性放入一个数组中。就像我说的,我的代码几乎可以正常工作了。以下是有效的方法:

   for (var i = 0; i <= response.features.length; i++){
var dataPoint = response.features[i].properties.B19013_001E;
console.log(dataPoint);
}

上面的代码会将我需要的所有 113 个点打印到控制台。 (对于那些好奇的人,B19013_001E 是家庭收入中位数,这是我想要的一个县内 113 个不同“区域”的数据。)现在,代码完成了我想要的,但是现在当我制作数组部分时:

   var dataArray = [];

for (var i = 0; i <= response.features.length; i++){
var dataPoint = response.features[i].properties.B19013_001E;
dataArray.push(dataPoint);
}

console.log(dataArray);

当我控制台记录我的阵列时,我只收到此错误消息:play.js:93 Uncaught TypeError: 无法读取未定义的属性“属性”

我不明白的是,为什么我可以将我需要的所有 113 个点单独获取到控制台,但是当我将它们放入数组时却遇到问题?我想到的一件事是,也许其中一个点不存在?但是当我查看 113 点的控制台日志记录时,我没有得到 null 或 undefined 的任何信息。任何帮助都会很棒,谢谢!

最佳答案

你应该使用 Array.map :

var dataArray = response.features.map(function(feature) {
return feature.properties.B19013_001E;
})

您收到该错误是因为 <=将最后一次迭代放在数据收集范围之外。您可以将其更改为 <

关于Javascript 通过从对象解析数据来解决数组问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39417025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com