React JS / Typescript

时间:2018-04-17 07:30:28

标签: javascript .net reactjs typescript null-check

我们在.NET中有Null合并运算符,我们可以使用如下

string postal_code = address?.postal_code;

我们可以在React JS中做同样的事情吗?

我发现我们可以用&&amp ;;操作

address.ts 文件

string postal_code = address && address.postal_code;

我需要什么样的.net功能可以在typescript中使用react JS,这可能吗?

类似的东西:

string postal_code = address?.postal_code // I am getting the error in this line if I try to use like .NET

2 个答案:

答案 0 :(得分:4)

这是TypeScript中的一项建议功能,位于传奇的Issue #16

在此功能的ECMAScript规范确定之前不会引入TypeScript,因为TypeScript实现需要遵循该规范 - 所以你会尽早得到它,但在这种情况下不会很早。

它被称为以下任何一种:

  • 空传播运营商
  • 存在运算符
  • Null Coalesce Operator

答案 1 :(得分:1)

JavaScript没有一个空合并运算符(TypeScript也是如此, 主要限制自己添加一个类型层并采用相当远的路径使其成为JavaScript的功能) 。有is a proposal for a JavaScript null-coalescing operator,但它仅在the process的第1阶段。

使用您所描述的&&成语是一种相当常见的方法:

let postal_code = address && address.postal_code;

如果addressnull(或任何其他虚假¹值),postal_code将是相同的值;否则,它将是address.postal_code的任何值。

¹虚假值为0""NaNnullundefined,当然还有false