我有这种情况..,我正在做这样的事情:

app.post('someUrl', function (req, res) {

    var r = res.data;

    var a = {};
    a.name = r.name || "",
    a.someotherKey : {
        id: r.otherKey.id || ""
    }

});


事实是,当res.data ==“”时,我可以分配a.name的值,因为r.name是“ undefined”,但是我为r.otherKey.id感到恐惧

"TypeError: Cannot read property 'id' of undefined"


任何解决问题的想法???

最佳答案

您可以利用&&运算符来执行以下操作:

a.someotherKey = {
    id: r.otherKey && r.otherKey.id || ""
}


如果两个均为true,则&&将返回第二个值;如果一个(或两个)为false,则false将返回第二个值。

10-06 07:32