您的位置:首页 > 数据库 > Mongodb

遇到问题-----mongodb-------Uncaught TypeError: Cannot read property 'value' of undefined

2016-06-07 16:18 656 查看
前面我们了解过 在mongodb 中使用js脚本运行。

mongodb执行js脚本(一)---shell执行

mongodb 执行js脚本(二)---mongovue执行

但是写mongodb的js脚本并不是很好调试。 只能逐句检查验证。

今天遇到了一个问题。

Uncaught TypeError: Cannot read property 'highStudentResultDetails' of undefined

var attentioncount=0;
var studentResults=item.resultDetail.studentResult.highStudentResultDetails;

for(var i=0;i<studentResults.length;i++ ){
var studentResult=studentResults[i];
if((studentResult.age>18)){
attentioncount=attentioncount=0+1;
}
}


原因是 不是每个item都有highStudentResultDetails,所以这里需要判空。最好外层也判空才能保证安全运行。
修改如下:
var attentioncount=0;
if(item&&item.resultDetail&&item.resultDetail.studentResult&&item.resultDetail.studentResult.highStudentResultDetails) {
var studentResults=item.resultDetail.studentResult.highStudentResultDetails;

for(var i=0;i<studentResults.length;i++ ){
var studentResult=studentResults[i];
if((studentResult.age>18)){
attentioncount=attentioncount=0+1;
}
}
}

主要是增加了这句判空 if(item && item.resultDetail && item.resultDetail.studentResult && item.resultDetail.studentResult.highStudentResultDetails ) {

问题得到解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: