javascript权威指南 学习笔记之null和undefined_Javascript教程-查字典教程网
javascript权威指南 学习笔记之null和undefined
javascript权威指南 学习笔记之null和undefined
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:javascript之null和undefined/********************null关键字********...

复制代码 代码如下:

<!doctype html>

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=UTF-8">

<title>javascript之null和undefined</title>

</head>

<body>

<script type="text/javascript">

/**

******************null关键字********************

JavaScript中的关键字null是一个特殊的值,它表示“无值”。null常常被看作对象类型的一个特殊值,即代表“无对象”的值。

null是一个独一无二的值,有别于其他所有的值。如果一个变量的值为null,那么就说明它的值不是有效的对象、数组、数字、字符串

和布尔值中的任何一种。

当null用于布尔环境时,它被自动转换为false.当它用于一个数字环境时,它被自动转换为数字0.当它用于一个字符串环境时,它

被自动转换为"null".

*/

var $null = null;

//用于布尔环境

if($null){

document.write("当null用于布尔环境时,不转换");

}else{

document.write("当null用于布尔环境时,它被自动转换为false");//此句将被输出

}

//用于数字环境

if(0 + $null == 0){

document.write("<br/>当null用于数字环境时,它被自动转换为0");//此句将被输出

}else{

document.write("<br/>当null用于数字环境时,不转换");

}

//用于字符串环境

document.write("<br/>用于字符串环境:"+$null);//null

//null的typeof:object

document.write("<br/>$null的数据类型为:"+typeof $null);//object

/**

*****************undefined******************

undefined是一个特殊的值,它不是javascript中的关键字。以下几种情况需要注意:

1.使用了已经声明但还没有赋值的变量时

2.使用了一个并不存在的对象属性时

以上二种情况,返回的都是undefined这个值。undefined值不同于null.

当未定义的值用于布尔环境时,它会自动转换为false;

当它用于一个数字环境时,它会自动转换为NaN;(NaN的解释:NaN 属性是代表非数字值的特殊值。该属性用于指示某个值不是数字。

当它用于一个字符串环境时,它会自动转换为"undefined";

*/

var $aaa;//声明了,但没有初始化。

var $bbb = "测试";//声明了,并且初始化了。

var $obj = new Object();

document.write("<br/>$aaa的类型:"+typeof $aaa+"、$aaa的值:"+$aaa);//undefined、undefined

document.write("<br/>$bbb的类型:"+typeof $bbb+"、$bbb的值:"+$bbb);//string、测试

document.write("<br/>$obj的一个不存在的属性myProp的类型:"+typeof $obj.myProp+"、$obj.myProp的值:"+$obj.myProp);//undefined、undefined

//document.write("<br/>输出一个并未声明的变量的值:"+$abc);//运行错误

/**

undefined 与 null的联系

虽然undefined和null值不同,但是==运算符却将两者看作相等。

var obj = new Objec();

obj.prop == null //返回true

如果要严格区分undefiend和null,则需要用到====运算符或者typeof

var obj = new Objec();

obj.prop === null //返回false

typeof obj.prop //输出undefined

typeof null //输出object

*/

</script>

</body>

</html>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类