js中的逻辑与中的隐式转换
今天主题逻辑与,小小总结一下 。
我觉得与其说是逻辑与还不如说是布尔与。因为关于有逻辑与的地方都是比较的是布尔值。然而以外的是返回的不一定是布尔值。分为两类。
第一类:只有比较运算符的逻辑与。(直接返回布尔值)
var a = 1;
var b = 2;
var c = 3;
console.log(a<b&&b<c); // true
console.log(a<b&&b>c); // false(比较运算符直接返回布尔值)
第二类:它只要隐式转换为false且是第一次出现的false,这个与表达式的结果就是它的值。如果隐式转换全都是true的话,那么结果就是最后一个。(先布尔再返回其值)
var a = 1;
var b = 2;
var c = 3;
var d = 0;
var e = " ";
var f = undefined;
var g = null;
var h = NaN;
console.log(a&&b&&c); //3 (隐式转换都是true,结果就是最后一个c的值)
console.log(a&&d&&e); //0 (隐式转换true false false,结果就是第一个false的d的值)
console.log(a<b && a && e); //0 (隐式转换true true false,结果就是第一个遇到的false的e的值)
console.log(a>b && a && d); //false (比较运算符直接返回true or false)
console.log(a<b && d && f); //0 (隐式转换true false false )
console.log(f && a & b ); // undefined (隐式转换false true true)
console.log(a && null & b ); //null (隐式转换true false true)
console.log(a && b& NaN ); //NaN (隐式转换true true false)。
关于强制类型的内容请查看目录。
- 点赞
- 收藏
- 分享
- 文章举报
- js的隐式转换问题
- js数据类型隐式转换
- js哪些情况会出现隐式类型转换
- JS中的类型转换(显示转换/隐式转换)
- js中的隐式转换
- 从 ++[[]][+[]]+[+[]]==10? 深入浅出弱类型 JS 的隐式转换
- JS的类型转换,强制转换和隐式转换
- js 隐式类型转换
- JS各种类型问题与隐式类型转换
- js隐式转换的知识实例讲解
- JS——数据类型转换,判断数据类型(typeof),parseInt与parseFloat的区别,隐式类型转换
- JS隐式类型转换
- js编程路上一步一个坑隐式转换总结
- js面试题 隐式转换、原型链分析
- JS的类型转换,强制转换和隐式转换
- js中的隐式转换
- JS--显示类型转换Number—隐式类型转换
- JS的类型转换,强制转换和隐式转换
- js的双等号隐式转换规则
- js隐式转换