【JavaSript 基础】if语句中的条件将数据类型作为标识符,计算为布尔值实现开关的作用
if语句中的条件将数据类型作为标识符,来实现开关的作用,在实际使用中非常实用。
记住以下开发中常用
| 数据类型 | true | false |
| boolean | true | false |
| String | "任何非空字符串" | 空字符串"" |
| Number | 任何非零数字值 | 0和NaN |
| Object | 任何对象(只要对象存在) | null(对象不存在时) |
| Undefined | undefined转为false |
??其中对象Object中除了undefined和null之外(计算为false),所有对象包括空对象{ }都计算为true,所有数组包括空数组[ ]都计算为true
字符串String中," "(字符串中一个空格),也会计算为true
以下MDN官网关于Boolean的描述
如果需要,作为第一个参数传递的值将转换为布尔值。如果省略或值0,-0,null,false,NaN,undefined,或空字符串(""),该对象具有的初始值false。所有其他值,包括任何对象,空数组([])或字符串"false",都会创建一个初始值为true的对象。
注意不要将基本类型中的布尔值 true 和 false 与值为 true 和 false 的 Boolean 对象弄混了。
其值不是undefined或null的任何对象(包括其值为false的布尔对象)在传递给条件语句时都将计算为true。