📜  JavaScript 空值合并运算符

📅  最后修改于: 2022-05-13 01:56:40.956000             🧑  作者: Mango

JavaScript 空值合并运算符

下面是 Nullish Coalescing Operator 的示例。

  • 例子:
    
    
  • 输出:
    55
    22

Nullish Coalescing Operator:这是本 ECMA 提案中引入的一项新功能,现已被官方 JavaScript 规范采用。如果左侧值为nullundefined ,则此运算符返回右侧值。如果不是 null 或 undefined,那么它将返回左值。以前,为未定义变量设置默认值需要使用if语句或逻辑 OR运算符“||”如下所示:

  • 程序:
    
    
  • 输出:
    42

当传递的参数少于函数原型中定义的参数数量时,它被赋予undefined的值。要为函数调用期间未传递的参数设置默认值,或者为 JSON 对象中不存在的字段设置默认值,上述方法很流行。

  • 程序:
    
    function foo(bar) {
        bar = bar || 42;
        console.log(bar);
    }
    // Output: 42
    foo(0);
    
    
  • 输出:
    42

JavaScript 中有一些值,例如 0 和一个空字符串,它们在逻辑上本质上是错误的。这些值可能会改变用 JavaScript 编写的程序的预期行为。

所有反复出现的问题导致了Nullish Coalescing Operator的发展。 Nullish Coalescing Operator 由两个相邻的问号定义??其用途如下:

  • 句法:
    variable ?? default_value

示例:如果传递的变量为 null 或未定义,并且只有这两个值,才会返回默认值。在包括 0、空字符串或 false 在内的所有其他情况下,将返回变量的值而不是默认值。

  • 方案一:
    
    
  • 输出:
  • 方案 2:更常见的用例是为 JSON 对象设置默认值,如下所示。
    
    
  • 输出:

支持的浏览器: JavaScript Nullish Coalescing Operator 支持的浏览器如下:

  • 谷歌浏览器 80
  • 火狐 72