js 中数字和bool的判断 财富值57

2016-10-11 08:23发布

console.log(1==true)//true console.log(2==true)//false console.log(2==false)//false

js中是如何判断数字和bool匹配的?看起来不是大于0都是true。求细节!!!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答

更多情况,可以参考 https://dorey.github.io/JavaS...

== 是比较运算符。

另外就是,==不作类型比较,当类型不同时,会进行转型到相同的类型在做比较。===则表示值和类型都绝对相等。

JavaScript中任意的值都可转换为Boolean类型,也就是真值假值的概念。
更详细点说就是,undefined、null、±0、NaN、""(空字符串)都会被转为false,即概念上的假值(falsy value),除此之外的值将被转换为true,称为真值(truthy value)

在JavaScript中—— 1的boolean值为true,0的boolean值为false。
也就是说:

推荐直接查看jquery源码。
str.indexOf("something") != -1
将number类型的数字转化为Boolean,在JQuery中,会将数字看成是字符串,调用indexOf(number.firstchar)方法,也就是说,对于0和所有正数,都返回0,其余值返回-1,对上述表达式而言,前者返回true,后者返回false.

有种东西,叫类型转换

不能这样对照!
下面的将会将Number和Boolean都转换成String!所以是true。

另外,Boolean类型的值可以通过toString()方法转换成String类型的"true"或者"false"

一周热门 更多>