验证会话的数组中是否存在对象

时间:2016-05-18 09:50:33

标签: javascript node.js

这里我将product_detail推送到空数组产品。首先,我检查数组是否为空,如果是,则将json数据推入数组并使用session更新。如果不是,我想验证是否存在具有id的对象,如果是,则不会推送它。但条件并没有成真。不知道我错过了什么,或者我错误地说错了

var product_details = {
    product_id: product._id,
    user_id: user_id,
};
if (product.length !== 0) {
    if (req.session.product.forEach(function(data) {
        (data.product_id == req.params._id)
    })) {
        return res.send("product already present ");
    }
    product.push(product_detail);
    req.session.product = product;
    return res.send(req.session.product);
}
product.push(product_detail);
req.session.product = product;
console.log(req.session);
return res.send(req.session.product);
});

1 个答案:

答案 0 :(得分:1)

只需将嵌套条件更改为:

var arrayTrue = true;

req.session.product.forEach(function(data) {
    if(data.product_id == req.params._id){
        arrayTrue = false;
    }
});

if(arrayTrue){
    // Doesn't exist...
}
else{
    return res.send("Product already present");
}
相关问题