如何解决具有逻辑OR的JavaScript三元
XQRS
这样做会使条件失败,为var a = '1';
console.log(a == ('2'||'1')?'hi':'hello');
。
由于此条件失败,因此它将a的值1与2进行比较。所以它总是打个招呼。
还有什么方法可以检查在“ ||”之后的value('1')以便打个招呼?
解决方法
分别列出不同的可能性:
a === '2' || a === '1' ? 'hi' : 'hello'
或者使用数组和.includes
:
['2','1'].includes(a) ? 'hi' : 'hello'
('2'||'1')
的问题在于,在与a
进行比较之前,整个节都被评估为单个表达式,并且||
的评估结果为真。 。因此,('2' || '1')
解析为'2'
。
var a = 1; a =='2'?'hi':a =='1'?'hello':'';
我发现这也是可行的。...感谢所有使用不同方式回答的人。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。