javascript中的undefined和not defined区别示例介绍


Posted in Javascript onFebruary 26, 2014

经研究发现,两者之间有很大的区别,不知从英语讲,这两者都有啥区别,研究结果如下
测试os:ubuntu
测试浏览器:chrome

测试案例1
console.log(a)
报错 ReferenceError: a is not defined

测试案例2
var a
console.log(a)
无报错,但是输出undefined

测试案例2
var b = {};
console.log(b.a)
无报错,但是输出undefined

测试案例3
function c() {
}
var d = new c();
console.log(d.a)
无报错,但是显示undefined
关于typeof
以上所有用来测试的对象用typeof 返回的都是 String("undefined")
关于或运算 ||
var d = a||3
报错 a not defined
var a;
var d = a || 3
结果:d==3
var c = 22 || 44
c==22
var c = false || 33
c == 33
if(x) {
}
报错
var x
if(x) {
}
if内不执行

总结:
js中有两种undefined 虽然用typeof 返回都是 String("undefined")
其中 定义之后,但是未经任何操作或者某对象的一个未定义的属性,都属于 可以拿来运算的 undefined ,可以用来当作逻辑运算
第二种的变量,完全没有定义,而且没有任何背景的(x.a,虽然x无a属性,但是给x面子),属于报错类型不能被使用,除非用typeof函数
js中的或运算,并不返回bool值,而是返回js对两边条件最后一个计算的值,比如 1||2 1为真,2不需要计算,所以 1||2 == 1 a||1 报错
var a; a|| 1 == 1;

找了本辞典翻译了一下
undefined可以翻译成:不明确的,也就是不知道用来干嘛的
而 not defined 可以翻译成 未定义的

Javascript 相关文章推荐
漂亮的widgets,支持换肤和后期开发新皮肤
Apr 23 Javascript
JavaScript 笔记二 Array和Date对象方法
May 22 Javascript
javascript字符串拼接的效率问题
Dec 25 Javascript
获取客户端电脑日期时间js代码(jquery)
Sep 12 Javascript
javascript获取系统当前时间的方法
Nov 19 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 Javascript
学习Javascript面向对象编程之封装
Feb 23 Javascript
深入理解JQuery中的事件与动画
May 18 Javascript
js添加千分位的实现代码(超简单)
Aug 01 Javascript
JavaScript之生成器_动力节点Java学院整理
Jun 30 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
Nov 07 Javascript
如何在现代JavaScript中编写异步任务
Jan 31 Javascript
通过隐藏iframe实现文件下载的js方法介绍
Feb 26 #Javascript
JS获取几种URL地址的方法小结
Feb 26 #Javascript
js获取当前地址 JS获取当前URL的示例代码
Feb 26 #Javascript
JS获取select的value和text值的简单实例
Feb 26 #Javascript
JS获取文本框,下拉框,单选框的值的简单实例
Feb 26 #Javascript
Js获取下拉框选定项的值和文本的实现代码
Feb 26 #Javascript
js自动查找select下拉的菜单并选择(示例代码)
Feb 26 #Javascript
You might like
PHP入门速成(2)
2006/10/09 PHP
PHP 开发工具
2006/12/06 PHP
php jquery 实现新闻标签分类与无刷新分页
2009/12/18 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
2015/11/30 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
thinkPHP5实现的查询数据库并返回json数据实例
2017/10/23 PHP
PHP日期和时间函数的使用示例详解
2020/08/06 PHP
JavaScript为对象原型prototype添加属性的两种方式
2010/08/01 Javascript
jquery uaMatch源代码
2011/02/14 Javascript
JavaScript中去掉数组中的重复值的实现方法
2011/08/03 Javascript
JS创建类和对象的两种不同方式
2014/08/08 Javascript
jquery实现html页面 div 假分页有原理有代码
2014/09/06 Javascript
使用node.js 制作网站前台后台
2014/11/13 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
2016/09/01 Javascript
Vue.js每天必学之方法与事件处理器
2016/09/06 Javascript
简易的JS计算器实现代码
2016/10/18 Javascript
详谈AngularJs 控制器、数据绑定、作用域
2017/07/09 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
2017/10/31 Javascript
vue watch自动检测数据变化实时渲染的方法
2018/01/16 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
Layui实现数据表格默认全部显示(不要分页)
2019/10/26 Javascript
VueCli4项目配置反向代理proxy的方法步骤
2020/05/17 Javascript
vue 项目软键盘回车触发搜索事件
2020/09/09 Javascript
Django实现快速分页的方法实例
2017/10/22 Python
python sys,os,time模块的使用(包括时间格式的各种转换)
2018/04/27 Python
Python模拟登录之滑块验证码的破解(实例代码)
2019/11/18 Python
python如何绘制疫情图
2020/09/16 Python
HTML5单页面手势滑屏切换原理分析
2017/07/10 HTML / CSS
H5离线存储Manifest原理及使用
2020/04/28 HTML / CSS
斯凯奇新西兰官网:SKECHERS新西兰
2018/02/22 全球购物
水产养殖学应届生求职信
2013/09/29 职场文书
心理健康教育心得体会
2013/12/29 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
2014年化验员工作总结
2014/11/18 职场文书
2015年政风行风工作总结
2015/04/21 职场文书
mysql主从复制的实现步骤
2021/10/24 MySQL