作家
登录

javascript权威指南 学习笔记之null和undefined

作者: 来源:www.28hudong.com 2013-03-30 00:43:18 阅读 我要评论

复制代码 代码如下: <!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中的this绑定介绍

而this的具体值则取决于其调用模式。 * 方法调用模式:this被绑定到该对象。 * 函数调用模式:this被绑定到全局对象,网页的情况下绑定到window * 构造器调用模式:this被绑定到新生成的对象。 * 事件处理调用模式>>>详细阅读


本文标题:javascript权威指南 学习笔记之null和undefined

地址:http://www.17bianji.com/kaifa2/JS/24126.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)