私は2つの配列を作成しているデータがあります。Javascriptデータリストは空になっていますがコンソールにはエラーはありません
コンソールでエラーは表示されませんが、リストは両方とも空です。
chList=[];
thList=[];
thCount=[];
for (var i = 0; i < mydata.length; i++) {
var obj = mydata[i];
var cl = obj.name;
if (obj.subcat != null) {
chList.push(cl);
}
if(obj.subcat) {
if (i < 10) {
var nme = obj.subcat.map(function(item){
return item.name;
console.log(nme);
});
thList = thList.concat(nme);
thCount.push(nme.length);
}
}
}
console.log(thList);
console.log(thCount);
問題は、このような空thListとthCountの両方が出てきているということです::[]
はどのようにすることができます。ここ
は、ここでデータ
mydata = {
"id": "661",
"name": "some name",
"description": "some desc",
"subcat": {
"662": {
"id": "662",
"name": "sub 1",
"translations": null
},
"663": {
"id": "663",
"name": "sub 2",
"translations": null
}
},
"image": null
};
コードがあるあります私はこれを悟りますか?
''未定義length'プロパティの値はあまりないだろうまでmydata'はとてもループ、配列ではありません。 – trincot
mydataが配列ではありません。長さのプロパティを持たないオブジェクトです。 – Smiranin
Yoyはvar length = Object.keys(mydata);を使用できます。そしてあなたはmydataの長さを取得します – Smiranin