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

JavaScript学习笔记-- undefined and null 数据类型分析

2012-09-06 15:00 866 查看
1. Undefined type

var message;
alert(message == undefined); //true

1)当一个变量被定义但没有初始化时,其值为“undefined”。

2)值为“undefined”的变量和没有被定义的变量的确别:

(1)值为“undefined”的变量:变量存在,值为“undefined”。

(2)没有被定义的变量:变量不存在。

var message; //this variable is declared but has a value of undefined
alert(message); //”undefined”
alert(age); //causes an error

(3)typeof 作用于值为“undefined”的变量和没有被定义的变量时返回值均为“undefined”

var message; //this variable is declared but has a value of undefined
alert(typeof message); //”undefined”
alert(typeof age); //”undefined”

在此处typeof无法区别值为“undefined”的变量和没有被定义的变量,在定义变量的同时最好同时对其初始化。

2. Null type
1)JavaScript 中null 是指向对象的空指针。

var car = null;
alert(typeof car); //”object”

2)当定义一个变量用于以后存储对象值时,在定义时最好先初始化为null值以待后面的使用。

if (car != null){
//do something with car
}


3)undefined是null
的子集

alert(null == undefined); //true


3. undefined与null 实际应用
1)变量定义

var numVal = 0; // 普通变量定义
var objVal = null; //对象变量定义

2)变量使用(在全局变量时的)

if (numVal != undefined){
//do something with numVal
}

if (objVal != null){
//do something with objVal
}


参考:JavaScript for Web Developers,Third Edition,Nicholas C. Zakas
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: