javascript - 为什么有时在使用变量之前将 'null' 分配给它

标签 javascript function null p5.js

以下面的代码片段为例:

//variable a,b and c will hold Constructors later
var a = null;
var b = null;
var c;

function setup() {
  //assign those Constructors to variable a,b and c
  a = new ControlsAndInput();
  b = new p5.FFT();
  c = new myOwnConstructor();
}

我注意到有些人喜欢声明并将 null 值分配给稍后将使用的全局变量。

问题是:在使用变量之前为变量分配 null 值和不为其分配 null 值之间有什么区别?上面示例中的 var a,bc 之间有什么区别吗?与 a 不同>b, c 在开始时没有分配 null 值,这是否会导致任何潜在的错误,为什么我需要分配 null code> 有时在使用变量之前先将其赋值给变量

最佳答案

当您不将 null 分配给变量时,您将“分配”undefined 给它。

var a = null;
var b = null;
var c;

console.log(a, b, c) // => null, null, undefined

您可以阅读this question的答案如果您想知道 nullundefined 之间的区别。

如果您好奇为什么人们想要添加 null 而不是 undefined - 可能是有原因的。例如,在代码中传递 undefined 检查。另外,有时人们可以分配初始值而不是 null,例如 false0'' 等;这是一个类似的 Action 。

但在您的特定情况下,您可以只使用 var a, b, c; 并且它会起作用并且不会违反任何规则。

关于javascript - 为什么有时在使用变量之前将 'null' 分配给它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55193040/

相关文章:

java - 尝试比较数组时出现空指针异常

javascript - 如何访问不允许cors的API?

javascript - Jquery 目标特定元素 - 下拉菜单

c - 如何在 C 中的数组的任何部分设置 "empty"元素

python - 如何捕获字典中函数的输入参数

C++ 独立函数文件

c++ - 为什么指针可以为NULL

javascript - 在 Python 中调用匿名函数而不将它们分配给变量

javascript - 导入路径中的 @ 是什么意思?

c - linux 上的 c 函数