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 相关文章推荐
用AJAX返回HTML片段中的JavaScript脚本
Jan 04 Javascript
Document.location.href和.replace的区别示例介绍
Mar 04 Javascript
基于jquery的手风琴图片展示效果实现方法
Dec 16 Javascript
js+CSS实现模拟华丽的select控件下拉菜单效果
Sep 01 Javascript
JavaScript中获取Radio被选中的值
Nov 11 Javascript
4种JavaScript实现简单tab选项卡切换的方法
Jan 06 Javascript
BootStrap的Datepicker控件使用心得分享
May 25 Javascript
基于vue组件实现猜数字游戏
May 28 Javascript
vue 页面加载进度条组件实例
Feb 05 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
Sep 04 Javascript
vue组件实践之可搜索下拉框功能
Nov 25 Javascript
vue.js实现点击图标放大离开时缩小的代码
Jan 27 Vue.js
利用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
微信公众平台天气预报功能开发
2014/07/06 PHP
php实现数组按指定KEY排序的方法
2015/03/30 PHP
php实现通过cookie换肤的方法
2015/07/13 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
PHP之多条件混合筛选功能的实现方法
2019/10/09 PHP
使用JavaScript检测Firefox浏览器是否启用了Firebug的代码
2010/12/28 Javascript
原生Js与jquery的多组处理, 仅展开一个区块的折叠效果
2011/01/09 Javascript
几种延迟加载JS代码的方法加快网页的访问速度
2013/10/12 Javascript
Javascript基础知识(一)核心基础语法与事件模型
2014/09/29 Javascript
5个数组Array方法: indexOf、filter、forEach、map、reduce使用实例
2015/01/29 Javascript
JavaScript插件化开发教程(六)
2015/02/01 Javascript
简单谈谈Javascript中类型的判断
2015/10/19 Javascript
jQuery实现拖动剪裁图片作为头像
2016/12/28 Javascript
ES6学习之变量的解构赋值
2017/02/12 Javascript
JavaScript异步上传图片文件的实例代码
2017/07/04 Javascript
react native与webview通信的示例代码
2017/09/25 Javascript
vue 1.x 交互实现仿百度下拉列表示例
2017/10/21 Javascript
详解JSONObject和JSONArray区别及基本用法
2017/10/25 Javascript
微信小程序多音频播放进度条问题
2018/08/28 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
[01:04:49]KG vs LGD 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python读写json文件的简单实现
2017/04/11 Python
python随机数分布random测试
2018/08/27 Python
Django命名URL和反向解析URL实现解析
2019/08/09 Python
python3 map函数和filter函数详解
2019/08/26 Python
python中字典按键或键值排序的实现代码
2019/08/27 Python
StubHub哥伦比亚:购买和出售您的门票
2016/10/20 全球购物
优秀员工自荐书范文
2013/12/08 职场文书
生物制药自我鉴定
2014/01/25 职场文书
党员查摆剖析材料
2014/10/10 职场文书
2014年检验科工作总结
2014/11/22 职场文书
女方家长婚礼答谢词
2015/09/29 职场文书
2016银行招聘自荐信
2016/01/28 职场文书
python爬虫框架feapde的使用简介
2021/04/20 Python
人物搭配车车超萌联名预备中 【咒术迴战】 ⨯ 【天竺鼠车车】 展开合作
2022/04/11 日漫
Docker官方工具docker-registry案例演示
2022/04/13 Servers