首页
网页制作
网络编程
脚本专栏
数据库
网站运营
网络安全
平面设计
CMS教程
搜索
建站极客
网络编程
JavaScript
正文
JScript中的undefined和"undefined"的区别
所属分类:
网络编程
/
JavaScript
阅读数: 948
收藏 0
赞 0
分享
JScript中用于表示未定义的
undefined
标识符到底是表示什么未定义?它和
"undefined"
(包括"在内)又有什么区别和联系呢?为什么有的时候可以使用
undefined
来和变量做比较,而有的时候又不行呢?
underfined
和
"undefined"
的区别大家一眼就能看出来。在一般的认知下,我们认为
undefined
是JScript提供的一个"关键字",而
"undefined"
却毫无悬念的就是一个字符串,只是引号内的内容长得和
undefined
一个样。
undefined
和
"undefined"
的区别虽然是十分明显的,但它们的联系也是紧密的。
仔细阅读JScript手册,其实这个underfined是一个"已定义"的Global值,而不是它的字面意义所表达的未定义。我们看下面这个代码示例,很有趣:
<
script
language
="javascript"
>
alert(undefined);
alert(variable);
</
script
>
执行的结果是:
我们稍微修改一下上面的代码,添加一个typeof调用来看看:
<
script
language
="javascript"
>
alert(
typeof
undefined);
alert(
typeof
variable);
</
script
>
这下结果应该是什么呢?显示
"object"
和
"undefined"
吗?当然不是了,两个alert调用都将显示
"undefined"
。
所以
undefined
是脚本引擎定义的一个常量,它在脚本引擎初始化完毕后存在。它的实际作用是用
来表示一个已定义的变量的未初始化状态(uninitialized)
,比如var i;,这时这个i的值就是
undefined
,而i是实实在在define了的,只是未初始化。这时我们就可以写这样的表达式来对i做判断,比如if ( i ==
undefined
)。如果从未在代码中出现过的变量被使用,这时的未定义的概念就是不
undefined
所描述的未初始化了,而是说明该变量完全未被登记到脚本引擎的上下文中。使用类似if ( abc ==
undefined
)的语句,将得到类似上图中的第二个错误提示。
在实际使用中,如果使用typeof来判断变量是否未定义,是可以完全兼容
未定义(undefined)
和
未初始化(uninitialized)
两种情况的,只是很多时我不喜欢使用 if ( typeof xxx ==
'undefined'
) 这样的写法,因为literal的字符串容易拼写错误,对用习惯了的强类型语言的角度来看也显得不专业。
更多精彩内容
其他人还在看
深入解析Vue 组件命名那些事
本篇文章主要介绍了深入解析Vue 组件命名那些事,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
评论 0
收藏 0
赞 0
分享
Vue学习笔记进阶篇之vue-cli安装及介绍
这篇文章主要介绍了Vue学习笔记进阶篇之vue-cli安装及介绍,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
评论 0
收藏 0
赞 0
分享
jquery版轮播图效果和extend扩展
这篇文章主要为大家详细介绍了jquery版轮播图效果,以及extend扩展的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
评论 0
收藏 0
赞 0
分享
jQuery Validate格式验证功能实例代码(包括重名验证)
本文通过实例代码给大家介绍了jQuery Validate格式验证功能,代码中包括重名验证的方法,需要的的朋友参考下吧
评论 0
收藏 0
赞 0
分享
Angular.js中angular-ui-router的简单实践
本篇文章主要介绍了Angular.js中angular-ui-router的简单实践,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
评论 0
收藏 0
赞 0
分享
JavaScript实现二维坐标点排序效果
这篇文章主要为大家详细介绍了JavaScript实现二维坐标点排序效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
评论 0
收藏 0
赞 0
分享
深入理解vue2.0路由如何配置问题
本篇文章主要介绍了vue2.0路由配置问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
评论 0
收藏 0
赞 0
分享
基于bootstrap实现多个下拉框同时搜索功能
这篇文章主要为大家详细介绍了基于bootstrap实现多个下拉框同时搜索功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
评论 0
收藏 0
赞 0
分享
JavaScript 值类型和引用类型的初次研究(推荐)
这篇文章主要介绍了JavaScript 值类型和引用类型的初次研究,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
利用jQuery异步上传文件的插件用法详解
这篇文章主要介绍了利用jQuery异步上传文件的插件用法详解,需要的朋友可以参考下
评论 0
收藏 0
赞 0
分享
查看更多
网络赚钱
更多
卡盟是怎么赚钱的?卡盟各个盈利模式介绍
儿子网购Q币被骗 父亲怒找客服投诉又被骗
四年的网赚经验
网赚如何避免上当受骗?网赚骗子如何防?
未来5大网络销售模式选哪种好?
图文讲解信用卡验证激活国际版PayPal账号的教程
站长故事
更多
站长故事之一份月薪1200元的SEO推广工作
为什么阿里巴巴要在美国上市不在国内上市?
浅谈:一个草根站长的服装论坛赚钱经验
八零后站长们:我们都是“囧”的一代
PHPWind
从5元到500万,我的创业历程