慕运维0124838
2015-09-19 14:09
var ticket ="true";
ticket==true 为什么是false?ticket是字符串,字符串是1应该是true啊,想不通
js中只默认字符串1和数字1为真,字符串true不会认为是真。
变量ticket初始值已经是true了,在if条件里不在需要他的值==true;直接用if(ticket)就可以了
var ticket ="true";
这时将ticket定义为了一个字符串;
而
ticket ==true;
这时,等号右边是“true”是一个保留字,即布尔值;
字符串!=布尔值,故false
你看我这个理解对否?
试试这两段代码你就知道了
1、 var a = "true"; if(a==true) alert(0); else alert(1); 2、 var a = "true"; if(a) alert(0); else alert(1);
var ticket ="true"; 这样子定义的变量是字符串
var ticket =true; 这样定义的变量才是bool值
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题