【问题标题】:Cannot access properties of object无法访问对象的属性
【发布时间】:2017-07-03 23:19:14
【问题描述】:

我遇到了一个非常奇怪的问题,我似乎无法解决。基本上我正在获取一个 CSV 文件并将其解析为一个 JSON 对象以保存在我的 redux 存储中。我进行了解析,一切都在工作......或者看起来它正在工作,并且一切都编译成一个漂亮的 JSON 对象,放在我的商店里。

当我映射每个项目并将对象记录在我的组件中时,它看起来似乎也是正确的,并且我可以访问我需要的一切......所以看起来。

问题是当我尝试使用这些对象中的属性时,无论如何我都无法定义。因此,例如console.log(weatherData[i])console.log(weatherData.keyname) 我可以如上所示记录对象。但是,当我尝试记录类似 console.log(weatherData[i].capital)console.log(weatherData.keyname.capital) 的内容时,我得到了未定义。

我不知道为什么会发生这种情况,现在我很迷茫,所以如果有人有任何想法,请告诉我。我还使用了componentWillMount 和 'setTimeout' 来确保我在请求之前拥有所有数据,但这也不能解决任何问题

【问题讨论】:

  • 你试过console.log(weather.data.Kabul.country)吗?
  • @randomir 刚刚尝试过,但仍未定义
  • @BradyEdgar 在第一张图片的日志中,您有一个带有weather 键的对象,因此在console.log 中您如何存储该对象,即它将是myObj.weather 等.从你最后的评论weatherData是变量对吗?所以你将拥有console.log(weatherData.weather)
  • @loretoparisi 刚刚发现,是双引号包裹在我的钥匙上

标签: javascript json reactjs redux


【解决方案1】:

刚刚发现问题,非常愚蠢,但是我对象上的键周围有双引号,这在尝试定位它们时会导致问题!无法判断,因为 inspect 和 redux 工具都用双引号格式化

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-05
    • 2016-07-22
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多