JavaScript 是一种区分大小写的语言,不能使用保留字来表示标示符,所有语言都这样JavaScript保留字:undefined,NaN和Infinity等????
变量未定义判断语句
1.1变量没有定义直接拿来用会造成未定义
1.2对象没有的属性直接拿来用会造成未定义
- //先定义一个对象
- var oy = {};或者 var oy = '';
- //自己上网查的
- alert(''+temp == 'undefined'); //错误,浏览器阻止往下运行
- alert(''+oy.p == 'undefined'); //显示true对话框可以往下执行
- //老大告诉我的
- alert(temp == undefined); //错误,浏览器阻止往下运行
- alert(oy.p == undefined); //显示true对话框可以往下执行
- //看yahoo table源码发现的
- if (typeof YAHOO == "undefined" || !YAHOO) {
- var YAHOO = {};
- }
- alert(typeof temp == 'undefined');//true
- YAHOO =''
- alert(!YAHOO);//true
- 看看,还是人家yahoo 牛逼!!!
- 1、typeof(NaN) number、typeof(Infinity) number、typeof(null) object、typeof(undefined) undefined
- 2、NaN == NaN false
- 3、NaN != NaN true
- 4、NaN >= NaN false
- 5、null == undefined true
- 6、null >= undefined false
- 7、null <= undefined false
- 8、parseInt("123abc") 123
- 9、"123abc" - 0 NaN
- 10、Infinity > 10 true
- 11、Infinity > "abc" false
- 12、Infinity == NaN false
- 13、true == 1 ture
- 14、new String("abc") == "abc" true
- 15、new String("abc") === "abc" false 完全相同