空的合并操作符角度2

use*_*236 65 null-coalescing-operator typescript angular

在角度2中等效的空合并运算符(??)是什么.

在C#中我们可以执行一个操作:

string str = name ?? FirstName ?? "First Name is null";
Run Code Online (Sandbox Code Playgroud)

Rom*_*n C 107

通过||操作员执行合并,即

let str:string = name || FirstName || "name is null and FirstName is null";
Run Code Online (Sandbox Code Playgroud)

您还可以阅读问题以获取更多详细信息和说明.

  • 或者operator(||)与nullish合并完全不同.例如:""|| "ibrahim"返回"ibrahim"和0 || "易卜拉欣"再次回归"易卜拉欣".但是,合并第一个操作返回"",第二个返回0.因为nullish合并只控制左侧值是等于null还是未定义 (14认同)
  • 当心 - 这不是 null 合并运算符为 `false || true` 返回 `true`。 (5认同)

ber*_*ing 5

在打字稿中

Typescript 引入了与 version 的 null 合并3.7,因此如果您在运行3.7或更高版本,您可以简单地编写:

const str = name ?? firstName ?? "Name and First Name are both null";
const x = foo?.bar.baz() ?? bizz();
Run Code Online (Sandbox Code Playgroud)

请参阅https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html#nullish-coalescing

在 Angular 模板中

从 Angular 12 开始,您也可以??在模板中使用。