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


Posted in Javascript onSeptember 25, 2011
<!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 相关文章推荐
将string解析为json的几种方式小结
Nov 11 Javascript
Jquery下:nth-child(an+b)的使用注意
May 28 Javascript
实现动画效果核心方式的js代码
Sep 27 Javascript
js如何设置在iframe框架中指定div不显示
Dec 04 Javascript
学习JavaScript设计模式(封装)
Nov 26 Javascript
JavaScript实现Base64编码转换
Apr 23 Javascript
Bootstrap零基础入门教程(二)
Jul 18 Javascript
微信小程序多列选择器range-key使用详解
Mar 30 Javascript
VUE2 前端实现 静态二级省市联动选择select的示例
Feb 09 Javascript
解决vue的 v-for 循环中图片加载路径问题
Sep 03 Javascript
Bootstrap fileinput 上传新文件移除时触发服务器同步删除的配置
Oct 08 Javascript
基于Vue实现微前端的示例代码
Apr 24 Javascript
利用JS自动打开页面上链接的实现代码
Sep 25 #Javascript
javascript权威指南 学习笔记之javascript数据类型
Sep 24 #Javascript
最简单的js图片切换效果实现代码
Sep 24 #Javascript
zShowBox 图片放大展示jquery版 兼容性
Sep 24 #Javascript
也说JavaScript中String类的replace函数
Sep 22 #Javascript
javascript笔记 String类replace函数的一些事
Sep 22 #Javascript
Prototype的Class.create函数解析
Sep 22 #Javascript
You might like
php中创建和调用webservice接口示例
2014/07/25 PHP
用 Composer构建自己的 PHP 框架之构建路由
2014/10/30 PHP
自己的js工具 Cookie 封装
2009/08/21 Javascript
js抽奖实现随机抽奖代码效果
2013/12/02 Javascript
jquery处理json数据实例分析
2014/06/03 Javascript
javascript使用appendChild追加节点实例
2015/01/12 Javascript
javascript折半查找详解
2015/01/26 Javascript
js实现按钮控制图片360度翻转特效的方法
2015/02/17 Javascript
详解javascript实现自定义事件
2016/01/19 Javascript
ES6中数组array新增方法实例总结
2017/11/07 Javascript
浅谈Vue数据响应
2018/11/05 Javascript
通过layer实现可输入的模态框的例子
2019/09/27 Javascript
[04:19]DOTA2亚洲邀请赛 现场花絮
2015/03/11 DOTA
python判断、获取一张图片主色调的2个实例
2014/04/10 Python
使用Python内置的模块与函数进行不同进制的数的转换
2016/03/12 Python
Python实现包含min函数的栈
2016/04/29 Python
致Python初学者 Anaconda入门使用指南完整版
2018/04/05 Python
python中的for循环
2018/09/28 Python
Python正则表达式实现简易计算器功能示例
2019/05/07 Python
python递归下载文件夹下所有文件
2019/08/31 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
Python如何将图像音视频等资源文件隐藏在代码中(小技巧)
2020/02/16 Python
详解python logging日志传输
2020/07/01 Python
Python读写锁实现实现代码解析
2020/11/28 Python
python实现学生信息管理系统源码
2021/02/22 Python
AutoShack.com加拿大:北美主要的汽车零部件零售商
2019/07/24 全球购物
如何高效率的查找一个月以内的数据
2012/04/15 面试题
夜大自我鉴定
2013/10/31 职场文书
教师通用专业自荐书范文
2014/02/11 职场文书
毕业班联欢会主持词
2014/03/27 职场文书
建筑施工安全生产责任书
2014/07/22 职场文书
见习报告的格式
2014/10/31 职场文书
2014年环卫工作总结
2014/11/22 职场文书
个人培训总结
2015/03/05 职场文书
考试没考好检讨书
2015/05/06 职场文书
vue整合百度地图显示指定地点信息
2022/04/06 Vue.js