您的位置:首页 > Web前端 > JavaScript

前端面试准备2----Javascript中的Undefined和null小结

2016-03-07 22:02 567 查看
  JavaScript中有两个表示“空”的值,分别是Undefined和null;

  (1)Undefined  

    定义了一个全局变量,它的值是
undefined
,这个变量也被称为
undefined
。 但是这个变量不是一个常量,也不是一个关键字。这意味着它的值可以轻易被覆盖。

  ES5 提示: 在 ECMAScript 5 的严格模式下,
undefined
不再是可写的了。 但是它的名称仍然可以被隐藏,比如定义一个函数名为
undefined


  下面的情况会返回
undefined
值:

访问未修改的全局变量
undefined


由于没有定义
return
表达式的函数隐式返回。

return
表达式没有显式的返回任何内容。

访问不存在的属性。

函数参数没有被显式的传递值。

任何被设置为
undefined
值的变量。

  null
的用处

    JavaScript 中的
undefined
的使用场景类似于其它语言中的 null,实际上 JavaScript 中的
null
是另外一种数据类型。

  它在 JavaScript 内部有一些使用场景(比如声明原型链的终结
Foo.prototype = null,又比如在删除DOM0级方法指定的事件处理程序时,


  将事件处理程序属性的值设置为null即可,btn.onclick=null
),但是大多数情况下都可以使用
undefined
来代替。

  JS判断Undefinde

  typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"

  以下是正确的用法:

  var exp = undefined;
  if (typeof(exp) == "undefined")
  {
  alert("undefined");
  }

  JS判断null

  JavaScript 中没有 isNull 这个函数。

  以下是正确的用法:

  var exp = null;
  if (!exp && typeof(exp)!="undefined" && exp!=0)
  {
  alert("is null");
  } 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: