Javascript Jslint使用'||';运算符而不是条件运算符

Javascript Jslint使用'||';运算符而不是条件运算符,javascript,syntax,jslint,Javascript,Syntax,Jslint,我让jslint抱怨我对下面的代码使用|运算符 query = ['browser' + (ieVersion ? ieVersion : 'UNKNOWN')] 我尝试使用|运算符,但结果不正确 query = ['browser' + ieVersion || 'UNKNOWN'] // => ['browserundefined'] 括号 query = ['browser' + (ieVersion || 'UNKNOWN')] 如果错误,请尝试以下方法: query =

我让jslint抱怨我对下面的代码使用
|
运算符

query = ['browser' + (ieVersion ? ieVersion : 'UNKNOWN')]
我尝试使用
|
运算符,但结果不正确

query = ['browser' + ieVersion || 'UNKNOWN'] 
// => ['browserundefined']
括号

query = ['browser' + (ieVersion || 'UNKNOWN')]
如果错误,请尝试以下方法:

query = ['browser' + (ieVersion || 'UNKNOWN')]
如果没有额外的括号,
+
运算符更强,JavaScript引擎将其评估为:

query = [('browser' + ieVersion) || 'UNKNOWN']

请注意,
'browser'+ieVersion
永远不会出错,因此您永远不会看到
'UNKNOWN'

您需要将表达式括在括号中:

query = ['browser' + (ieVersion || 'UNKNOWN')]

对不起,我的错,我试过用括号。现在将更新问题。但这对帕伦斯有效,就像你接受的答案一样。编辑:我搞砸了。我实际上不使用括号。从现在起,我将永远担心优先权。