JS双问号用法 当左值为 null 或 undefined 时(并非所有 false 值,如 0 或 ‘’),返回右值 但是当左值为 0 时,依然返回左值,这是和 || 的唯一区别 12345678let foo = null ?? 'default string'; //"default string"foo = 0 ?? 42; //0foo = 1 ?? 42; //1foo = '' ?? 42; //''foo = null || 'default string'; ////"default string"foo = 0 || 42; // 42foo = 1 || 42; // 1foo = '' || 42; //42 参考:Nullish coalescing operator (??)