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 相关文章推荐
接收键盘指令的脚本
Jun 26 Javascript
javascript的原生方法获取数组中的最大(最小)值
Dec 19 Javascript
js中opener与parent的区别详细解析
Jan 14 Javascript
jQuery中ajax的get()方法用法实例
Dec 26 Javascript
jquery获取checkbox的值并post提交
Jan 14 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
Sep 16 Javascript
详解ECharts使用心得总结
Dec 06 Javascript
vue-cli的webpack模板项目配置文件分析
Apr 01 Javascript
Vue Router的懒加载路径的解决方法
Jun 21 Javascript
@angular前端项目代码优化之构建Api Tree的方法
Dec 24 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
Nov 29 Javascript
Element Cascader 级联选择器的使用示例
Jul 27 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中header函数的用法及其注意事项详解
2016/06/13 PHP
将PHP的session数据存储到数据库中的代码实例
2016/06/24 PHP
laravel手动创建数组分页的实现代码
2018/06/07 PHP
js中更短的 Array 类型转换
2011/10/30 Javascript
JavaScript动态插入script的基本思路及实现函数
2013/11/11 Javascript
addEventListener 的用法示例介绍
2014/05/07 Javascript
javascript 处理null及null值示例
2014/06/09 Javascript
js判断主流浏览器类型和版本号的简单实现代码
2016/05/26 Javascript
BootstrapValidator超详细教程(推荐)
2016/12/07 Javascript
js 颜色选择插件
2017/01/23 Javascript
angularjs之$timeout指令详解
2017/06/13 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
Vue组件之自定义事件的功能图解
2018/02/01 Javascript
前后端如何实现登录token拦截校验详解
2018/09/03 Javascript
JavaScript多种页面刷新方法小结
2019/04/04 Javascript
详解Nuxt.js 实战集锦
2019/11/19 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
ES6新增的数组知识实例小结
2020/05/23 Javascript
JavaScript this关键字指向常用情况解析
2020/09/02 Javascript
Python 除法小技巧
2008/09/06 Python
Python实现模拟浏览器请求及会话保持操作示例
2018/07/30 Python
Python 支付整合开发包的实现
2019/01/23 Python
基于python分析你的上网行为 看看你平时上网都在干嘛
2019/08/13 Python
Python OrderedDict的使用案例解析
2019/10/25 Python
matplotlib基础绘图命令之errorbar的使用
2020/08/13 Python
使用tensorflow进行音乐类型的分类
2020/08/14 Python
CSS实现鼠标滑过鼠标点击代码写法
2016/12/26 HTML / CSS
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
中国跨境电商:Tomtop
2017/03/16 全球购物
美国眼镜网站:LensCrafters
2020/01/19 全球购物
捐助感谢信
2015/01/22 职场文书
幼儿园卫生保健制度
2015/08/05 职场文书
《红领巾真好》教学反思
2016/02/16 职场文书
MySQL基础(一)
2021/04/05 MySQL
解析MySQL binlog
2021/06/11 MySQL
人民币符号
2022/02/17 杂记