javascript - For循环: TypeError: Cannot read property '0' of undefined

标签 javascript arrays json object for-loop

我正在尝试循环访问 API 请求返回的一些数据,其结构如下:

[ { kind: 'qpxexpress#tripOption',
    saleTotal: 'USD107.70',
    id: 'fANabOjuLoDMb9zppwbeXL002',
    slice: [ [Object] ],
    pricing: [ [Object] ] },
  { kind: 'qpxexpress#tripOption',
    saleTotal: 'USD107.70',
    id: 'fANabOjuLoDMb9zppwbeXL003',
    slice: [ [Object] ],
    pricing: [ [Object] ] },
  { kind: 'qpxexpress#tripOption',
    saleTotal: 'USD107.70',
    id: 'fANabOjuLoDMb9zppwbeXL001',
    slice: [ [Object] ],
    pricing: [ [Object] ] } ]

但是我的 for 循环给了我一个类型错误,我正在努力调试。我错过了什么?

  request(options)
  .then(function (response) {
    //.log(response.trips.tripOption)
    let selects = 0
    for(let i = 0; i < response.trips.tripOption.length; i++) {
      if (response.trips.tripOption[i].selected) {
        selects++
      }
    }
    return selects
    console.log('hello' + ' ' + selects)

  })
  .catch(function (err) {
    console.log(err)
  })

最佳答案

您的代码片段中的第 6 行 出现了拼写错误,写的是 tripOptions 而不是 tripOption

此外,应该在返回选择之前console.log()

关于javascript - For循环: TypeError: Cannot read property '0' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40401932/

相关文章:

javascript - HTML5 字体大小根据浏览器大小调整大小 javascript/jquery

java - 字节数组的声明

c# - 定义数组内容的更优雅的方式

php - 仅当存在 JSON 数据时才创建页面元素

javascript - 为什么需要 chop JSON.parse 的 StringContent 响应

javascript - 在 javascript 中创建简单的书签

javascript - 使用鼠标单击按钮和使用开发工具单击有什么区别?

java - 如何通过Spring框架中的 Controller 使用查询字符串将参数发送到jsp页面?

c - 为什么即使将数组名称与其索引交换也可以使用数组?

json - 如何让 GoLang 的 http.HandleFunc() 正常工作?