首先,我们需要了解 JavaScript 代码执行过程,它由两个阶段组成:内存创建阶段和代码执行阶段。 “未定义”和“未定义”都与内存空间有关。
未定义
在内存创建阶段,变量和函数被存储为键值对。 javascript 将 undefined 分配给每个变量作为占位符。这个临时值会一直保留,直到 javascript 找到真正的值,然后用真正的值替换 undefined。不要将 undefined 分配给任何变量;这不是一个好的做法。
var x ; console.log(x);// undefined x = 2; console.log(x); //2
未定义
在 javascript 中,如果一个变量根本没有声明并且我们尝试访问它,它将抛出一个 referenceerror。
console.log(x);//ReferenceError: x is not defined
感谢 akshay saini https://youtu.be/b7if6g3eyik?si=0wqlx-yjvogdkkin