javascript - 字符串不是只有在空的时候才是false吗?
本文介绍了javascript - 字符串不是只有在空的时候才是false吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
解决方案
var str = "hello";
console.log(str == true);
if (str) {
console.log("if true");
}
// false
// if true
也就是说,上面的 ==
判断并不是把 str
转换为布尔型来判断的,但是下面 if
语句的条件必须是布尔弄,所以是转换为布尔型来判断的,那么试试这个
console.log("true" == true);
console.log("false" == false);
// false
// false
很显示,==
也不是把布尔型转换为字符串来比较的……
其实 ==
的比较确实是转换成字符串来比较但,但是在布尔型转换为字符串之前,要先转换成 Number
,所以下面的实验就成功了
console.log("1" == true);
console.log("0" == false);
// true
// true
这篇关于javascript - 字符串不是只有在空的时候才是false吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文