赞
踩
今天遇到了一个小问题,大致提取一下如下:
var a="23";
if(a==true){
.....//code here
}
天真的以为会执行括号里面的内容,但是发现其实括号里返回的是false。
后来发现这个表达式的过程是这样的:首先通过隐式转换把true转换成1,然后再把"23"转换成23,所以最后就是
if(23==1),返回了false。
其实可以直接if(a) ,或者if(!!a),也可以if(Boolean(a))。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。