码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2016-03-08 00:00:07      阅读:431      评论:0      收藏:0      [点我收藏+]

标签:

  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");
  } 

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

标签:

原文地址:http://www.cnblogs.com/xiaodongaini/p/5252116.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!