学习Typescript的逻辑运算符

284 阅读2分钟

布尔运算符

逻辑运算符是编程语言中基本和简单的运算符。它们基本上是比较布尔表达式并返回布尔值。基本上,布尔表达式是多个条件,每个条件返回真/假。然后,这些条件可以使用这个逻辑运算符进行组合,输出结果为布尔值。

其语法和用法在javascript中也是一样的。这个运算符在typescript中也可以称为布尔运算符。

语法

Operand operator operand

操作数是一个表达式,它总是被评估为真/假。操作数就像布尔运算符--And, OR 和 Not。在typescript中,有三个逻辑运算符

或 - ||运算符

这个运算符的符号是两条垂直线。操作数是一个条件表达式,是布尔型的。我们可以组合多个操作数,优先级从左到右
以下是OR运算符可能的条件值示例

  
console.log(true  || true )      // returns true  
  
console.log( false || true )      //  returns true  
  
console.log( true  || false)     //  returns true  
  
console.log('string1' || 'string2' )     //  returns "string1"  
  
console.log( false || 'string3')      //  returns "string3"  
  
console.log('string4' || false  )    //  returns "string4"  
  
console.log(''    || false  )    //  returns false  
  
console.log( false || '' )        //  returns ""  
  

如果其中一个操作数为真,输出为返回,否则返回假。
所有的表达式都返回真,除了使用假条件的两个表达式。

评估说明

  • 运算符总是从左到右进行计算
  • 如果第一个操作数为真,其余操作数不被评估,则运算符返回真。
  • 如果所有的操作数都被评估了,这意味着从左边开始的后续操作数都是假的。

&& And 操作符

和运算符的符号是双安培号。
如果所有的操作数都被评估为真,该操作符返回真,否则返回假。

console.log(true  && true )      // returns true  
  
console.log( false && true )      //  returns false  
  
console.log( true  && false)     //  returns false  
  
console.log('string1' && 'string2' )     //  returns "string2"  
  
console.log( false && 'string3')      //  returns "false"  
  
console.log('string4' && false  )    //  returns "false"  
  
console.log(''    && false  )    //  returns ""  
  
console.log( false && '' )        //  returns false  
  

评估注意事项

  • 总是从左到右进行评估
  • 如果第一个操作数被评估为假,则返回假,其他操作不被评估。
  • 如果所有的表达式都被评估了,则返回最后一个操作数的评估值作为输出。

非运算符

非运算符的符号是感叹号!。该操作符返回操作数的逆值。

console.log(!true)      // returns false  
console.log(!false)      // returns true