ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
像这种非正常现象,**返回的结果可能不是布尔值**,是由于其他类型数据参与逻辑运算的时候,浏览器解析器会自动将这些数据“隐式转换”为布尔值进行逻辑运算。 通过 boolean() 隐式转换的 数字类型 布尔值 0 false NaN <br/> 其余数字 true <br/> <br/> <br/> 字符串 布尔值 <br/> <br/> 空字符串 false <br/> <br/> 非空字符串 true <br/> <br/> <br/> <br/> 未定义类型数值 布尔值 <br/> <br/> undefined false <br/> <br/> 空对象类型 布尔值 <br/> <br/> null false 在非布尔值进行&&运算时候 <br/> <br/> 如果是false&&true运算,那么返回false的值 <br/> 如果是true&&true运算,那么返回第二个true的值。 <br/> 如果是true&&false运算,那么返回false值。 <p style="color:red">所以说就看第一个值是true还是false如果第一个值为false返回第一值,如果第一个值为true返回第二值。</p> 在非布尔值进行||运算时候 <br/> <br/> 如果是false||true运算,那么返回true的值。 <br/> 如果是true||false运算,那么返回true的值。 <br/> 如果是true||true运算,那么返回第一个true的值。 <br/>