js的一些运算符规则

简介: js的一些运算符规则

?? 是根据 null 和 undefined 判断的,

|| 是根据 布尔值 false 判断的,  左侧为true 不看右侧

&& 左侧为false 不看右侧

?. ”可选链操作符“,允许读取位于连接对象链深处的属性的值,而不必明确验证链中的每个引用是否有效。在引用 null  或者 undefined  的情况下不会引起错误(主要是用于防止报错!)

一、&& 是与运算,左侧true返回右侧,左侧false直接返回左侧

let aa = true && false    // aa是 false

let aa = false &&  true  // aa是false

二、|| 是或运算,左侧true返回左侧,左侧false直接返回右侧

let aa = true || false   // aa是true

let aa = false || true  // aa是true

三、??空值合并操作符,只有当左侧是null和undefind,才会返回右侧,其余情况返回左侧,和 || 运算符类似,又有不同 || 运算符当左侧是假值的情况就会返回右侧,如 0 或者 ""

let aa = null ?? 1  // aa是1

let aa = null || 1  // aa是1

let aa = undefind ?? 1  // aa是1

let aa = undefind || 1  // aa是1

let aa = 0 ?? 1  // aa是0

let aa = 0 || 1  // aa是1

let aa = "" ?? 1  // aa是""

let aa = "" || 1  // aa是1

四、?.可选链操作符  a?.b 当a存在是返回a.b

let a = {}

let aa = a?.b // aa是undefind

let aa = a?.b ?? 123 // aa是123

let a = {b:1}

let aa = a?.b // aa是1

目录
相关文章
|
1月前
|
JavaScript
js运算符
js运算符
21 5
|
30天前
|
JavaScript 前端开发
JS隐式类型转换规则
【10月更文挑战第9天】 不同的 JavaScript 引擎可能在隐式类型转换的具体实现上存在一些细微差别。理解这些隐式类型转换规则对于正确处理数据和避免错误非常重要。
16 0
|
1月前
|
JavaScript 前端开发
JavaScript 运算符全知道
JavaScript 运算符全知道
50 0
|
2月前
|
JavaScript 前端开发
JavaScript 运算符
JavaScript 运算符
20 3
|
3月前
|
JavaScript 前端开发
JavaScript 中的 typeof 运算符
【8月更文挑战第29天】
24 1
|
3月前
|
JavaScript 前端开发 安全
深入理解JavaScript中的比较运算符
深入理解JavaScript中的比较运算符
|
3月前
|
前端开发 JavaScript 程序员
聊聊前端 JavaScript 的扩展运算符 “...“ 的使用场景
聊聊前端 JavaScript 的扩展运算符 “...“ 的使用场景
|
3月前
|
JavaScript 前端开发
JS常见的运算符有哪些?
JS常见的运算符有哪些?
|
3月前
|
JavaScript 前端开发
JavaScript基础&实战(2)js中的强制类型转换、运算符、关系运算符、逻辑运算符、条件运算符
这篇文章详细介绍了JavaScript中的强制类型转换、运算符(包括算术、逻辑、条件、赋值和关系运算符)的使用方法和优先级规则。
JavaScript基础&实战(2)js中的强制类型转换、运算符、关系运算符、逻辑运算符、条件运算符
|
3月前
|
JavaScript 前端开发
JavaScript的命名规则
JavaScript的命名规则
100 0