嵌套三元存在一些问题:
我有代码:
var genericName = Beauty;
setTitle = (!empty(shopOnline) ? shopOnline + ' | ' : '')
+ (!empty(productName) ? productName + ' | ' : '')
+ genericName;
我想要这样的场景:
当前,我正在获取代码的输出(如果genericName为空)-在线购物|产品名称|
如果在产品名称后genericName为空,我们如何添加嵌套三元运算符以删除“ |” ((!empty(productName)?productName +'|':''))
答案 0 :(得分:1)
[shopOnline, productName, genericName].filter(Boolean).join(' | ')
这里Boolean function作为回调提供,以过滤出像
0, -0, null, false, NaN, undefined, ''
您还可以将empty()
用作过滤器的回调
[shopOnline, productName, genericName].filter(i => !empty(i)).join(' | ')