JavaScript中存在什么`?`?

时间:2014-03-17 15:40:00

标签: c# javascript types nullable

已阅读MDN中的一些文档:

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest

当我看到我想知道的概述部分时,这是什么意思?

enter image description here

在C#中有一个可以为空的数据类型: http://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx

使用与JS示例类似的语法,该示例位于docs的屏幕截图中:

int? num = null;

这意味着,类似int这样的结构的值类型不仅可以包含某个值,而且可以为其分配null值。

但是! JavaScript有一个鸭子打字,它也是一个弱表现的动态语言。在JS中,我可以为任何值分配null或undefined,甚至不设置任何值,它不是C#的严格语言。

所以...它不能像C#那样是可空类型,那么它是什么?

1 个答案:

答案 0 :(得分:2)

这是一个接口定义,不是实际的javascript代码。它只表示该值可以是null。这意味着与C#

完全相同

考虑到在javascript中你没有声明返回值,并且你正在看到它。