lihongjie0209 / myblog

4 stars 0 forks source link

JS: null vs undefined #233

Open lihongjie0209 opened 3 years ago

lihongjie0209 commented 3 years ago

undefined 指变量未初始化

undefined is a property of the global object. That is, it is a variable in global scope. The initial value of undefined is the primitive value undefined.

In modern browsers (JavaScript 1.8.5 / Firefox 4+), undefined is a non-configurable, non-writable property, per the ECMAScript 5 specification. (Even when this is not the case, avoid overriding it.)

A variable that has not been assigned a value is of type undefined. A method or statement also returns undefined if the variable that is being evaluated does not have an assigned value. A function returns undefined if a value was not returned.

null表示当前变量指向一个空对象

The value null is written with a literal: null. null is not an identifier for a property of the global object, like undefined can be. Instead, null expresses a lack of identification, indicating that a variable points to no object. In APIs, null is often retrieved in a place where an object can be expected but no object is relevant.