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");
}
js混淆加密
可以保护JS代码,让js代码不能被他人随便使用,对于重要的代码,有必要用混淆加密的方法保护。国内最好的js混淆加密平台:JShaman(http://www.jshaman.com/)
(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");
}
js混淆加密
可以保护JS代码,让js代码不能被他人随便使用,对于重要的代码,有必要用混淆加密的方法保护。国内最好的js混淆加密平台:JShaman(http://www.jshaman.com/)