楚歌
西出阳关客,临风听暮蝉

只存在javaScript中的 undefined

它和js历史有关,早期因为一些原因特意设计的。目前,null和undefined基本是同义的

目前的用法

null表示"没有对象",即该处不应该有值。典型用法是

  1. 作为函数的参数,表示该函数的参数不是对象
  2. 作为对象原型链的终点。
Object.getPrototypeOf(Object.prototype)  
// null

//Object.getPrototypeOf 要返回其原型的对象
//Object.prototype 是一个对象,用于表示Object的原型对象

 

undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:

  1. 变量被声明了,但没有赋值时,就等于undefined
  2. 调用函数时,应该提供的参数没有提供,该参数等于undefined
  3. 对象没有赋值的属性,该属性的值为undefined
  4. 函数没有返回值时,默认返回undefined
 1 var i;
 2 i // undefined
 3 
 4 function f(x){console.log(x)}
 5 f() // undefined
 6 
 7 var  o = new Object();
 8 o.p // undefined
 9 
10 var x = f();
11 x // undefined

 

posted on 2022-01-26 15:43  慵懒的楚歌  阅读(114)  评论(0)    收藏  举报