循环遍历数组内的所有数组元素?

时间:2017-07-26 03:12:08

标签: javascript arrays mongoose

我完全不知道我在这里做错了什么。我正在尝试查询我的猫鼬模型中的数组,而我似乎无法得到它。我确定它很简单。

我的模型看起来像这样:

var aSchema= new mongoose.Schema({
    userType: String,
    arr: [
        {
            id: Number,
            name: String, 
            description: String,
            attribute: String,
            answerType: String,
            textAnswer: String,
            skill: [
                {
                    heading: String,
                    detail: String
                }
            ]
        }
    ]
});

我想循环遍历所有问题并打印出每条记录的名称。我尝试了以下方法:

a.find({ "userType": "test" }, { "arr": 1 }, function(err, users) {
        if (err) {
            console.log(err);
        } else {
            for (i = 0; i < users.length; i++) {
                console.log(users[i].name);
            }
        }
    });

我一直未定义名称,如何访问用户数组中每个元素的名称?

感谢!

1 个答案:

答案 0 :(得分:1)

a.find({ "userType": "test" }, { "arr": 1 }, function(err, users) {
        if (err) {
            console.log(err);
        } else {
            for (i = 0; i < users.length; i++) {
                console.log(users[i].arr[0].name);
            }
        }
    });

应该有效