我在html页面中创建了一个json数组,但我一直在
无法读取未定义的属性
在
var opleidingArray = VragenEnScores.vragen[index].opleidingen;
<script>
$(document).ready(function() {
var VragenEnScores = {
"vragen":[
{"nummer":1,
"opleidingen":[
{'naam':'3D artist', 'scores':[10,20,30,400], 'resultaat':0}
,{'naam':'3D print productdesigner', 'scores':[5,2,8,4], 'resultaat':0}
,{'naam':'Aannemer installateur centrale verwarming/ combi solar thermal', 'scores':[0,2,9,4]}
]
},
{"nummer":2,
"opleidingen":[
{'naam':'3D artist', 'scores':[1,2,3,4], 'resultaat':0}
,{'naam':'3D print productdesigner', 'scores':[5,2,8,4], 'resultaat':0}
,{'naam':'Aannemer installateur centrale verwarming/ combi solar thermal', 'scores':[0,2,9,4]}
]
},
{"nummer":3,
"opleidingen":[
{'naam':'3D artist', 'scores':[1,2,3,4], 'resultaat':0}
,{'naam':'3D print productdesigner', 'scores':[5,2,8,4], 'resultaat':0}
,{'naam':'Aannemer installateur centrale verwarming/ combi solar thermal', 'scores':[0,2,9,4]}
]
}
]
};
var antwoordenPerVraag = [3,4,7,8];
var resultatenPerOpleiding = new Object();
antwoordenPerVraag.forEach(berekenEindresultaten);
function berekenEindresultaten(item, index) {
var opleidingArray = VragenEnScores.vragen[index].opleidingen;
var params = {antwoord: item};
opleidingArray.forEach(haalScoresOp.bind(params));
}
function haalScoresOp(item, index) {
if (isNaN(resultatenPerOpleiding[item.naam])) {
resultatenPerOpleiding[item.naam] = 0;
resultatenPerOpleiding[item.naam] += item.scores[this.antwoord];
} else {
resultatenPerOpleiding[item.naam] += item.scores[this.antwoord];
}
}
var sortable = [];
for (var resultaat in resultatenPerOpleiding)
sortable.push([resultaat, resultatenPerOpleiding[resultaat]])
sortable.sort(
function(a, b) {
return b[1] - a[1]
}
)
$('#resultaat').text(sortable);
});
</script>
有人知道可能出现什么问题吗?