首页 > 语言 > JavaScript > 正文

JavaScript的null和undefined区别示例介绍

2024-05-06 16:08:51
字体:
来源:转载
供稿:网友
在Javascript中对于这种生命后没有给定初始值的变量,就给他一个undefined,如果要将一个标识符声明称object类型,但是暂时不给他实例,那么就可以将它先初始化为null
 
 

先说说undefined:

Javascript中的变量是弱类型的, 所以声明变量的时候只需使用var关键字即可。如果是像C这样的强类型语言, 声明变量的时候如果没有指定初始值,那么会给他一个默认值,比如int变量的默认值是0。但是在Javascript这样的弱类型语言中,没有办法确定到底该给这样的变量一个什么样的默认值,比如我声明一个变量

var v1;

是给他false还是0,或者是'' ?

因为没有类型,所以无法确定。 在Javascript中对于这种生命后没有给定初始值的变量,就给他一个undefined。不过前提是这个变量必须已经声明,如果对于没有声明过的标识符,就会出错。看看下面的代码。

vo="vo";//不使用var关键字创建的是全局变量,如果不赋值会报错,如下 
//v1;//会报错 
var v2;//undeifned 
var v3="";//null 
alert(vo); 
//alert(v1);// 
alert(v2); 
alert(v3);

再来说说null:

Javscript有几个基本类型,Number,String,Boolean,Object。对于Object 类型的变量,他有两种情况,一种是他是一个对象的实例,另一种他是一个空引用null,熟悉类似Java这样面向对象语言的朋友应该很容易理解。对于这两种情况,他们的类型都是Object。Javascript中的变量,在给他赋值的时候,才 
会确定它的类型,比如下面这样。

代码如下:
 

var v1 = 1;
var v2 = true;
 
alert(typeof v1); //number
alert(typeof v2); //boolean
 
v2 = new Date();
alert(typeof v2); //object
 
v2 = "str";
alert(typeof v2); //string
 
v2 = null;
alert(typeof v2); //object
?
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表