如何访问数组对象的元素?

Posted

技术标签:

【中文标题】如何访问数组对象的元素?【英文标题】:How can I accesss to the elements of array objects? 【发布时间】:2020-11-19 21:37:56 【问题描述】:

如何从这个 json 数据中获取数据?

我从服务器获取这些数据,并使用 sequelize 发送一些数据库的数据。

我要访问的数据是

result: "["userid":"a","speed":10,"userid":"b","speed":20,"userid":"c","speed":30]"]" 

我试过console.log(result[0].userid);

但是,我只是犯了这样的错误。 ' Uncaught TypeError: Cannot read property 'userid' of undefined'.

你能告诉我我要解决什么吗?

【问题讨论】:

JSON.parse(result) @Adam - 不确定这对无效的 JSON 格式有什么帮助 【参考方案1】:

你提供了一个无效的 JSON,json 应该是这样的:

格式化的 JSON 数据


  "result":[
    
      "userid":"a",
      "speed":10
    ,
    
      "userid":"b",
      "speed":20
    ,
    
      "userid":"c",
      "speed":30
    
  ]

然后你就可以访问它了:

const json = 
  "result":[
    
      "userid":"a",
      "speed":10
    ,
    
      "userid":"b",
      "speed":20
    ,
    
      "userid":"c",
      "speed":30
    
  ]
;

console.log(json.result[0].userid);

【讨论】:

【参考方案2】:

您的 JSON 格式错误。

试试这个吧……

"result":["userid":"a","speed":10,"userid":"b","speed":20,"userid":"c","speed":30]

主要问题是......

result: "["userid"

应该是……

"result":["userid"

"speed":30]"]" 

应该是……

"speed":30]

请注意,项目之间的空格没有区别,但我已删除以减小 JSON 字符串的大小

【讨论】:

以上是关于如何访问数组对象的元素?的主要内容,如果未能解决你的问题,请参考以下文章

如何访问在 Mongoose 模式对象数组的另一个数组中定义的数组元素?

如何使用直接状态访问将元素缓冲区数组“绑定”到顶点数组对象?

如何访问 PHP 中的 JSON 元素,如数组对象?

如何访问数组的对象(stdClass Object)成员/元素的属性? [复制]

在对象数组上使用扩展运算符来访问元素[重复]

数据结构:使用面向对象模拟数组