js - 变量名后的问号

Was*_*and 0 javascript

我找不到对以下语法的任何引用:

data?.length > 0 && ...rest of the code
Run Code Online (Sandbox Code Playgroud)

我理解双&符号和其余的。我唯一不清楚的是“数据”变量后面的问号。它是什么意思或叫什么?我找不到任何相关信息。

通常,我会使用以下内容检查变量是否存在(为真):

data && if_data_is_true_execute_this
Run Code Online (Sandbox Code Playgroud)

Jua*_*edo 5

这是 ECMAScript 2020 的一项新功能,允许您在尝试访问属性之前检查它是否存在 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining