javascript中的undefined和not defined区别示例介绍
javascript中的undefined和not defined区别示例介绍
发布时间:2016-12-30 来源:查字典编辑
摘要:经研究发现,两者之间有很大的区别,不知从英语讲,这两者都有啥区别,研究结果如下测试os:ubuntu测试浏览器:chrome测试案例1con...

经研究发现,两者之间有很大的区别,不知从英语讲,这两者都有啥区别,研究结果如下

测试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教程学习
编程开发子分类