发布于 2016-10-27 10:47:56 | 216 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的Javascript教程,程序狗速度看过来!

JavaScript客户端脚本语言

Javascript 是一种由Netscape的LiveScript发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。


这篇文章主要介绍了javascript中的undefined和not defined区别,需要的朋友可以参考下
经研究发现,两者之间有很大的区别,不知从英语讲,这两者都有啥区别,研究结果如下
测试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 可以翻译成 未定义的

最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务