技术文摘
JS 中鲜为人知的空值合并运算符(??)知识点
在 JavaScript 中,空值合并运算符(??)是一个相对较新且鲜为人知的特性,但它在处理空值和未定义值时非常有用。
空值合并运算符(??)用于提供一种更简洁和直观的方式来处理默认值。与逻辑或运算符(||)不同,空值合并运算符仅在其左侧操作数为 null 或 undefined 时才返回右侧操作数。
例如,考虑以下代码:
let value1 = null;
let default1 = 10;
let result1 = value1?? default1;
console.log(result1); // 输出 10
let value2 = 5;
let default2 = 15;
let result2 = value2?? default2;
console.log(result2); // 输出 5
在第一个示例中,由于 value1 为 null ,所以 result1 被赋值为 default1 的值 10。而在第二个示例中,value2 有值 5,所以 result2 直接取 value2 的值 5,而不会使用 default2 的值 15。
空值合并运算符在函数参数默认值的设置中也非常有用。假设我们有一个函数:
function calculate(num1 = 0, num2 = num1?? 5) {
return num1 + num2;
}
console.log(calculate(2)); // 输出 7
console.log(calculate()); // 输出 5
在这个函数中,如果调用 calculate 时没有传递 num2 的值,num2 将使用 num1 的值(如果 num1 不为 null 或 undefined ),否则使用默认值 5 。
空值合并运算符还可以用于对象属性的默认值设置。
let user = {
name: 'John',
age: null
};
let defaultAge = 25;
let age = user.age?? defaultAge;
console.log(age); // 输出 25
空值合并运算符(??)为 JavaScript 开发者提供了一种更优雅和精确的方式来处理空值和默认值,有助于编写更简洁和可维护的代码。在实际开发中,合理运用这个运算符可以提高代码的可读性和健壮性。
TAGS: JS 运算符 JS 空值合并运算符 JS 冷门知识 JS 知识点
- Linux 如何查看文件内容中某一行数据
- Win11 电脑摄像头打开呈黑色的解决办法
- U盘 UEFI 硬装 WIN10 64 位系统(三星 951+GTX950)自行安装指南
- Linux 插入耳机无声如何解决
- Dell 电脑使用 U 盘一键安装 Win10 系统教程
- Win10 桌面壁纸更换受阻及壁纸锁定的解决之策
- Win11 中 VMware 虚拟机崩溃死机的解决办法及修复教程
- Windows10 账户名称修改方法
- Linux aptitude 命令在 Debian Linux 系统中的用法详解(软件包管理工具)
- Win11 内部预览版 19044.1865 推送更新补丁 KB5015878 及修复内容汇总
- 如何在 Ubuntu 系统安装 Flash Player 应用
- Linux dpkg-query 命令的详细用法(Debian Linux 中的软件包查询工具)
- 如何在 Linux 系统中打开矢量图 ai 格式
- Linux 中 RPM 软件包的安装、更新与卸载之道
- Win11 用户名与密码的备份方法