console.log('true text'|| true?'text':'text1');是否很明显?记录“文本”?

时间:2018-11-06 08:13:06

标签: javascript

我应该打印“真实文本”,因为它等同于真实

console.log('true text' || true ? 'text' : 'text1');

但是,输出是'text'; 对不起,如果愚蠢...

4 个答案:

答案 0 :(得分:2)

您正在使用ternary operator语法。 您正在执行以下操作:

if ('true text' || true)
    console.log('text');
else
    console.log('text1');        

答案 1 :(得分:1)

这里“ true text”与true进行或运算,结果将始终为true。因此,获取打印的值将是“文本”

答案 2 :(得分:1)

三元运算符的语法是

Condition ? <Return if condition is true> : <Return if condition is false> ;

在您的情况下,您将true与or运算符配合使用,因此它将始终返回text1

(true ||任何条件)将始终返回true

答案 3 :(得分:0)

console.log('true text'|| true?'text':'text1');

在上面的语句中,'true text' || true ?表达式始终求值为True(因为您有|| true表达式),因此您将获得“文本”字符串。