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 相关文章推荐
原创javascript小游戏实现代码
Aug 19 Javascript
基于jquery的仿百度的鼠标移入图片抖动效果
Sep 17 Javascript
JS刷新当前页面的几种方法总结
Dec 24 Javascript
jQuery$命名冲突怎么办如何解决
Jan 16 Javascript
jquery实现类似淘宝星星评分功能实例
Sep 12 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
Feb 17 Javascript
AngularJs 国际化(I18n/L10n)详解
Sep 01 Javascript
基于jQuery实现滚动切换效果
Dec 02 Javascript
微信小程序非跳转式组件授权登录的方法示例
May 22 Javascript
如何通过javaScript去除字符串两端的空白字符
Feb 06 Javascript
javascript设计模式 ? 工厂模式原理与应用实例分析
Apr 09 Javascript
javascript的hashCode函数实现代码小结
Aug 11 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 imagecreatetruecolor 创建高清和透明图片代码小结
2010/05/15 PHP
fleaphp常用方法分页之Pager使用方法
2011/04/23 PHP
PHP 获取MySQL数据库里所有表的实现代码
2011/07/13 PHP
PHP中使用xmlreader读取xml数据示例
2014/12/29 PHP
Zend Framework实现具有基本功能的留言本(附demo源码下载)
2016/03/22 PHP
JavaScript高级程序设计 DOM学习笔记
2011/09/10 Javascript
html+javascript实现可拖动可提交的弹出层对话框效果
2013/08/05 Javascript
JQuery显示隐藏DIV的方法及代码实例
2015/04/16 Javascript
深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
2015/12/16 Javascript
JavaScript数组方法总结分析
2016/05/06 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
Vue路由跳转问题记录详解
2017/06/15 Javascript
Vue之Watcher源码解析(1)
2017/07/19 Javascript
值得收藏的vuejs安装教程
2017/11/21 Javascript
Angular实现svg和png图片下载实现
2019/05/05 Javascript
webpack 代码分离优化快速指北
2019/05/18 Javascript
JavaScript闭包相关知识解析
2019/10/19 Javascript
TensorFlow.js 微信小程序插件开始支持模型缓存的方法
2020/02/21 Javascript
js抽奖转盘实现方法分析
2020/05/16 Javascript
Python计算三维矢量幅度的方法
2015/06/15 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
2019/02/14 Python
django 数据库连接模块解析及简单长连接改造方法
2019/08/29 Python
浅谈django url请求与数据库连接池的共享问题
2019/08/29 Python
Python散点图与折线图绘制过程解析
2019/11/30 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
详解Pymongo常用查询方法总结
2021/01/29 Python
手把手教你实现一个canvas智绘画板的方法
2019/03/04 HTML / CSS
单位未婚证明范本
2014/01/18 职场文书
大学生个人求职信
2014/06/02 职场文书
出纳工作检讨书
2014/10/18 职场文书
2014小学语文教师个人工作总结
2014/12/03 职场文书
首次购房证明
2015/06/19 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书
TV动画《八十龟酱观察日记》第四季宣传PV公布
2022/04/06 日漫
Java设计模式之代理模式
2022/04/22 Java/Android