JS if 变量判断的高阶用法

JavaScript010

JS if 变量判断的高阶用法,第1张

if条件语句非常简单,如下:

一般『条件』是由逻辑表达式组成,比如:

但是除了这种常规的条件判断之外,还有一些非常规的,比如:

这种判断『变量』的方式,具体表达什么含义呢?如何使用?以下几种场景,具体分析 :

==是比较两个值是否相等,相同类型直接比较,不同类型的话,看情况转换。

String==Number --->toNumber(String)==Number

Boolean==(any) --->toNumber(Boolean)==(any)

Object==String/Number---->toPrimitive(Object)

对于 Object 类型,先尝试调用 .valueOf 方法获取结果。 如果没定义,再尝试调用 .toString方法获取结果

if(a==b){alert(11)}

解释:if语句是在括号里面写判断条件,然后如果判断通过,则执行{}里面的代码。

比如上面的条件就是当a等于b时,执行alert(11)

这是逗号运算符,之前所有的运算表达式都会执行,但整个语句的值是最后一个表达式的值

比如:a = (b=2, c=3, 4==4)

括号里的是逗号运算表达式,b=2, c=3这样的赋值表达式会正常执行,

但a最后的值是true,也就是4==4的结果,true;如果换成4==5,a就是false了

而 &&表达式是只要其中一个为假,那么整个表达式就是假

逗号表达式(s=a, b, c, ...., n)s的值就是n的值,与前面的都没有关系,只是正常的执行罢了,不会影响结果