javascript - Javascript - 从 csv 文件转换后访问数组中的数据
问题描述
我正在将一个 csv 文件导入到我转换为数组的项目中。我能够将我的数据作为一个数组取回,但由于它的结构,我很难访问其中的数据。
例如,当 console.logging 我的数组时,cardDataList
我得到一个返回:
[…]
0: "State"
1: "202"
3: "129,491"
现在,我尝试使用这些数据附加到 HTML id,但我遇到了正确定位其中一个对象的问题。例如,如果我想使用0: "State"
I am unable to附加到一个 id cardData[0].0
。我也尝试过cardData[0].["name"]
,但返回未定义。我的预期结果是将每个对象作为目标,就好像它是一个 json 对象一样。
例如,如果数组是
[...]
Name: "State"
我可以通过做访问数据cardData[0].Name
这是我的代码:
function getCardData() {
$.ajax({
type: "get",
url: cardData,
async: true,
success: function (data) {
let cardDataList = [];
let csvObjects = $.csv.toObjects(data);
for (var i = 0; i < csvObjects.length; i++) {
name = csvObjects[i]["StateName"];
population = csvObjects[i]["Population"];
business = csvObjects[i]["Businesses"];
var arrCardListItem = [
name,
population,
business,];
cardDataList.push(arrCardListItem);
}
const urlStr= window.location.pathname;
if (urlStr.includes('/state/')) {
console.log(cardDataList[0])
}
解决方案
如果您想像访问对象一样访问它,请让您的 cardDataList 成为一个对象数组。考虑:
var arr = []
var name = 'test'
var population = 'testpop'
var obj = {
name,
population
}
arr.push(obj)
console.log(arr[0])
console.log(arr[0].name)
结果
Object
name: "test"
population: "testpop"
__proto__: Object
test
推荐阅读
- asp.net-core - 为什么在使用此 AspNetCoreRateLimit 中间件 for Asp.Net Core 时无法获得启动的速率限制
- speech-to-text - 登录认知服务语音容器预览时出错
- sql-server - 试图分解 SQL 查询的结果以显示每个月的数据
- drupal - 如何在 Twig 中以纯文本形式显示变量的内容?
- regex - number(a,b) 格式的有效正则表达式
- c++ - 尝试使用采用结构并设置值的函数创建链表
- wordpress - 如何重置重力表单中所有记录的特定字段
- android - 如何在颤动中显示带有提交按钮和隐藏输入字段的html表单
- java - Java弹性搜索:获取索引的最后一个ID
- apache-kafka - 为什么消息代理不提供发送的总数据/消息指标?