在if 条件判断中,this.listArrTwo[index].areaName 报 areaName 是undefined

在if 条件判断中,this.listArrTwo[index].areaName 报 areaName 是undefined

      this.listArr.forEach((item, index) => {
        if(this.listArrTwo[index].areaName ) {
          item.areaNameT = this.listArrTwo[index].areaName
          item.stotalT = this.listArrTwo[index].stotal
          item.ctotalT = this.listArrTwo[index].ctotal
        }
      })

就是报 if条件中的 areaName 是undefined ,在循环最后一次的时候,是没areaName 这个key的 ,所以报了undefined,我即使加一个this.listArrTwo[index].areaName !==undefined 也是会报错,这是为什么

阅读 1.5k
2 个回答
this.listArr.forEach((item, index) => {
        if(this.listArrTwo[index] && this.listArrTwo[index].areaName ) {
          item.areaNameT = this.listArrTwo[index].areaName
          item.stotalT = this.listArrTwo[index].stotal
          item.ctotalT = this.listArrTwo[index].ctotal
        }
      })

这样试试呢

下次回答问题,把你的代码以及错误信息贴出来。

你这里,根本不可能报areaName是undefined错误的,只能报this.listArrTwo[index]是undefined,造成这个错误的原因可能是listArrTwo这个数组长度不够,所以index溢出,获取到的this.listArrTwo[index]是undefined,undefined进行属性取值抛出错误。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题