条件运算符(三元运算符)
条件运算符(三元运算符)的语法为:condition ? exprIfTrue : exprIfFalse
。它用于根据条件表达式的结果来选择两个不同的表达式之一。如果条件为真,则表达式返回exprIfTrue
的结果;否则返回exprIfFalse
的结果。
可选链操作符(?.)
可选链操作符(?.)用于安全地访问嵌套对象的属性或方法,而不会因为中间某个引用为null或undefined而抛出错误。其语法为:obj?.prop
。如果obj
是null或undefined,表达式将立即返回undefined,否则继续访问属性或方法。
空值合并操作符(??)
空值合并操作符(??)用于提供一个默认值,当左侧的操作数为null或undefined时,返回右侧的操作数;否则返回左侧的操作数。其语法为:value ?? defaultValue
。这常用于提供默认值,避免因变量为null或undefined而导致的错误。
示例代码
1.条件运算符:
let value = condition ? trueValue : falseValue;
2.可选链操作符:
const obj = {a: {b: 1}}; console.log(obj?.a?.b); // 输出 1
3.空值合并操作符:
const value = null ?? 'default'; // 输出 'default'
这些用法使得JavaScript在处理条件判断、对象属性访问和提供默认值时更加灵活和安全。