首页 > 解决方案 > 就内存管理而言,保留变量未定义、将它们设置为 null 还是将它们设置为初始类型值更好?

问题描述

在 JavaScript 中,为变量定义一个值、为变量定义 null 还是让它们未定义更好?

选项 A

var a;

选项 B

var b = null;

选项 C

var c = [];

代码

var items = null;

if (performAction) {
   items = getSelectedItems();
   performOtherAction(items);
}

IIRC 如果运行时不知道类型,则 null 或 undefined 值将为任何对象类型分配空间。虽然,如果 JIT 看到分配了特定类型的变量,那么它可以推断类型,然后为该类型分配内存。

如果您定义并清空值,它会为该类型(字符串、数字、布尔值等)分配空间。

有一个类似的问题,但这个问题不包括将它们设置为您最终将使用的类型的选项,也没有询问三个选项之间的内存管理。

设置 JavaScript 变量 = null,还是未定义?

标签: javascript

解决方案


推荐阅读