obj.list && obj.list.length 为什么不先判断obj.list是否有值

RT:obj.list && obj.list.length 为什么不先判断obj.list是否有值,就会报length没有定义?

因此我都会这样处理一下(我大概能理解为什么要这样处理,但不知道专业的解释)


{

    orderMsgJson0.list && orderMsgJson0.list.length ? [

        orderMsgJson0.list.map(item => (

            <p dangerouslySetInnerHTML={{ __html: formatNullStr(this.strReplace(item.senderMsg, `scm.html?tab=saleOrderDetail&orderId=${item.orderId}`)) }}></p>

        )),

        <p className="person-more"><a href="#">查看更多>></a></p>

    ] : <p>暂无数据</p>

}


Cats萌萌
浏览 292回答 1
1回答

胡说叔叔

1.不判断list是否存在就取list的话,如果list不存在,就会报异常,导致后面的代码无法执行2.map一样
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript