【问题标题】:Get the first element's property from an array从数组中获取第一个元素的属性
【发布时间】:2020-08-06 06:53:08
【问题描述】:

我从使用const alerts = response.data; 的HTTP 请求的响应中获得了一个数组,并将它传递给function createData(alerts)。在这个函数中,我尝试使用:var temp = alerts[0].createdAt 从这个数组的第一个元素中获取属性createdAt。请注意,此数组不为空。这是var temp = alerts[0]; console.log(temp);的结果:This is alerts[0]

我从 console.log(temp) 得到的错误:

TypeError:无法读取未定义的属性“createdAt” 如何获取第一个元素的 createdAt 值?

【问题讨论】:

  • 当您执行arr[0].createdAt 时,您的数组很可能是空的,这可能是因为您的数组正在异步填充,但很难从您提供的内容中分辨出来。如果可能,请尝试创建一个minimal reproducible example
  • 您能添加更多代码示例吗?向我们展示如何设置数组对象以及如何尝试获取数据。
  • 添加了更多信息

标签: javascript arrays properties


【解决方案1】:

如果createdAt 未定义,则表示您没有读取正确的对象

const array =  [{id: 1, seen:true, createdAt: "01-01-01"}]
console.log(array[0].createdAt) // 01-01-01

【讨论】:

    【解决方案2】:

    实际上它应该可以工作。您访问变量的方式可能有问题。

    let a = [{id: 1, seen:true, createdAt: "01-01-01"}, {id: 2, seen:true, createdAt: "01-01-01"}]
    var temp = a[0].createdAt;
    console.log(temp)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-27
      • 1970-01-01
      • 2013-06-21
      • 1970-01-01
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多