js操作符

本文详细介绍了JavaScript中的逻辑运算符`||`和空值合并操作符`??`的用法,以及可选链操作符`?.`的使用场景。通过实例展示了如何在不同条件下返回相应值,并探讨了`!!`用于布尔转换的规则。同时,还提到了`~~`和`+`在转换数值类型中的应用。
摘要由CSDN通过智能技术生成

|| 逻辑或

当左侧为false,返回右侧的值

当左侧为true,返回左侧的值

console.log('' || 1) //1
console.log(1 || '') //1
console.log(null || 1) //1
console.log('' || 0) //0

?? (空值合并操作符 | 逻辑操作符)

只有当左侧为null和undefined时,才会返回右侧的数

console.log(null ?? '右侧返回值') //右侧返回值
console.log(undefined ?? '右侧返回值') //右侧返回值
console.log('string' ?? '右侧返回值') //string
console.log(1 ?? '右侧返回值') //1
console.log(false ?? '右侧返回值') // false

?. (可选链接操作符)

const _p = {
  name: 'pName',
  child: {
    name: 'childName'
  }
}
console.log(_p.child?.name) //childName
console.log(_p.child.name?.age) //undefined

!! (0、-0、null、""、false、undefined 或者 NaN转化为false,其他为true)

console.log(!!0) //false
console.log(!!-0) //false
console.log(!!null) //false
console.log(!!'') //false
console.log(!!false) //false
console.log(!!undefined) //false
console.log(!!NaN) //false
console.log(!!1)//true
console.log(!!'string')//true

~~ (把表达式强行转为int)

console.log(~~5) //5
console.log(~~'5') //5
console.log(~~null) //0
console.log(~~undefined) //0
console.log(~~true) //1
console.log(~~false) //0

+ (把表达式强行转为int)

console.log(+5) //5
console.log(+'5') //5
console.log(+null) //0
console.log(+undefined) //NaN
console.log(+true) //1
console.log(+false) //0

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值