文章目录
相等运算符
//console.log(1 == 1); //true
var a = 10;
//console.log(a == 4); //false
//console.log("1" == 1); //true
//console.log(true == "1"); //true
//console.log(null == 0); //false
/*
* undefined 衍生自null
* 所以这两个值做判断时,会返回true
*/
console.log(undefined == null);
/*
* NaN不和任何值相等,包括他本身
*/
console.log(NaN == NaN); //false
var b = NaN;
//判断b的值是否是NaN
//console.log(b == NaN);
/*
* 可以通过isNaN()函数来判断有一个值是否是NaN
* 如果该值是NaN则返回true,否则返回false
*/
//console.log(isNaN(b));
//console.log(10 != 5); //true
//console.log(10 != 10); //false
//console.log("abcd" != "abcd"); //false
//console.log("1" != 1); //false
//console.log("123" === 123); //false
//console.log(null === undefined);//false
console.log(1 != "1"); //true
1. 说明
- 相等运算符用来比较两个值是否相等
- 如果相等会返回 true,否则返回 false
2. == 相等运算
2.1. 当使用==来比较两个值时,如果值的类型不同,则会自动进行类型转换,将其转换为相同的类型然后再比较
2.2. undefined 衍生自 null
所以这两个值做判断时,会返回 true
2.3. NaN 不和任何值相等,包括他本身
console.log(1 == 1); //true
var a = 10;
console.log(a == 4); //false
console.log("1" == 1); //true
console.log(true == "1"); //true
console.log(null == 0); //false
/*
* undefined 衍生自null
* 所以这两个值做判断时,会返回true
*/
console.log(undefined == null);
/*
* NaN不和任何值相等,包括他本身
*/
console.log(NaN == NaN); //false
var b = NaN;
//判断b的值是否是NaN
console.log(b == NaN);
console.log(isNaN(b));
3. != 不相等运算
- 不相等用来判断两个值是否不相等,如果不相等返回 true,否则返回 false
- 不相等也会对变量进行自动的类型转换,如果转换后相等他也会返回 false
console.log(10 != 5); //true
console.log(10 != 10); //false
console.log("abcd" != "abcd"); //false
console.log("1" != 1); //false
console.log(1 != "1"); //true
4. === 全等运算
- 用来判断两个值是否全等,它和相等类似,不同的是它不会做自动的类型转换
- 如果两个值的类型不同,直接返回 false
console.log("123" === 123); //false
console.log(null === undefined); //false
5. !== 不全等 运算
- 用来判断两个值是否不全等,和不等类似,不同的是它不会做自动的类型转换
- 如果两个值的类型不同,直接返回 true