调用函数并传参,有时候控制台会报错“Type Error : value.map is not a function“

问题描述:

写了一个函数,函数的功能是正常的,只是有的时候会在控制台报错

原来的代码如下:

hotMapData(value) {
      if (this.chartData.type === 'thermodynamicDiagram') {
        let val = value.map((item) => {
          return [item[1], item[0], item[2] || '-']
        })
        this.chartInfo.series[0].data = val
      }
    },



原因分析:

当value有值的时候,该函数可以正常执行,当value为空的时候,该函数虽然可以执行,但是无法执行value.map,因此控制台会报错




解决方案:

加一个判断条件:

hotMapData(value) {
      if (this.chartData.type === 'thermodynamicDiagram') {
        if (value.length > 0) {
          let val = value.map((item) => {
            return [item[1], item[0], item[2] || '-']
          })
          this.chartInfo.series[0].data = val
        }
      }
    },


版权声明:本文为qq_44361111原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。