ajax获取数据后,获取到的数据数组报错是什么原因????(数据是可以打印出来的)

## 在上面数据已经获取到了,并可以打印出来!!!
下面是要把获取到的数据中的questionTypeId获取出来。总共有五条数据。

 requestApi(url,method,data,function(data){
        nomInfo = data;
        if(data.code == 0){
            nom = data.data;
            //成功
            console.log("问题列表接口获取成功!!!!!!!!!!!");
            for(var i=0;nom.length;i++){
                nomId[i] = nom[i].questionTypeId;
                console.log(nom[i].questionTypeId);
            }
        }
        else
        {
            alert(data.message);
        }
    })

## 在上面代码第八行报错->questionTypeId!!!
https://img1.mukewang.com/5cd7d0b60001dd7b06300131.jpg

## questionTypeId数据打印出来,打印全部数组" i "报错,打印具体的哪一个数组的话就可以!!!
https://img1.mukewang.com/5cd7d0b800010a7506310121.jpg

nom[0]、nom[1]......

可以打印出数据,但是nom[i]不行,显示undefine

nom[0].questionTypeId、nom[1].questionTypeId......

同样可以打印出数据,但是nom[i].questionTypeId报错

看得出来是 i 有问题,但是报错的是questionTypeId!

问题出在哪里????求助各位大佬!!!


补充内容:打印出了nom[0],还有数据内容,里面是有questionTypeId的!

https://img3.mukewang.com/5cd7d0bb0001062110930450.jpg


PIPIONE
浏览 577回答 7
7回答

慕田峪9158850

for 循环需要指定循环次数 , 否则当循环的次数大于 你数据的 nom 的总数据量时 , 就会报错 ,for(var&nbsp;i=0;&nbsp;i&nbsp;<&nbsp;nom.length;&nbsp;i++){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nomId[i]&nbsp;=&nbsp;nom[i].questionTypeId; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;console.log(nom[i].questionTypeId); }

Helenr

第一:id过长,请转为字符串(后台转)

婷婷同学_

因为nom[0]、nom中的元素是undefined吧requestApi(url,method,data,function(data){nomInfo = data;if(data.code == 0){nom = data.data;//成功console.log("问题列表接口获取成功!!!!!!!!!!!");for(var i=0;i<nom.length;i++){nomId[i] = nom[i].questionTypeId;console.log(nom[i].questionTypeId);}}else{alert(data.message);}})

POPMUISE

在nomId[i] = nom[i].questionTypeId;这一行打个断点走走看。一般不能读取Undefined的某个属性的错误都是因为代码取到的对象是个Undefined。还有你的for循环i<nom.length是不是漏了个比较

梵蒂冈之花

数组里面没有questionTypeId这个key把

莫回无

nomId[i] 这个在哪里定义的?

慕尼黑8549860

能把nom[0]中的数据或者数据结构打印出来看看嘛
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript