我有jslint抱怨我使用||
运算符代替以下代码
query = ['browser' + (ieVersion ? ieVersion : 'UNKNOWN')]
我尝试使用||
运算符,但结果错误,
query = ['browser' + ieVersion || 'UNKNOWN']
// => ['browserundefined']
答案 0 :(得分:6)
Operator precedence错了,试试这个:
query = ['browser' + (ieVersion || 'UNKNOWN')]
没有额外的括号+
运算符更强大,JavaScript引擎将其评估为:
query = [('browser' + ieVersion) || 'UNKNOWN']
请注意,'browser' + ieVersion
永远不会虚假,因此您永远不会看到'UNKNOWN'
。
答案 1 :(得分:2)
括号?
query = ['browser' + (ieVersion || 'UNKNOWN')]
答案 2 :(得分:2)
您需要将表达式括在括号中:
query = ['browser' + (ieVersion || 'UNKNOWN')]