1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 <script type="text/javascript"> 7 8 /* 9 * 相等运算符用来比较两个值是否相等, 10 * 如果相等会返回true,否则返回false 11 * 12 * 使用 == 来做相等运算 13 * - 当使用==来比较两个值时,如果值的类型不同, 14 * 则会自动进行类型转换,将其转换为相同的类型 15 * 然后在比较 16 * 不相等 17 * 不相等用来判断两个值是否不相等,如果不相等返回true,否则返回false 18 * - 使用 != 来做不相等运算 19 * - 不相等也会对变量进行自动的类型转换,如果转换后相等它也会返回false 20 * 21 * 22 * === 23 * 全等 24 * - 用来判断两个值是否全等,它和相等类似,不同的是它不会做自动的类型转换 25 * 如果两个值的类型不同,直接返回false 26 * !== 27 * 不全等 28 * - 用来判断两个值是否不全等,和不等类似,不同的是它不会做自动的类型转换 29 * 如果两个值的类型不同,直接返回true 30 */ 31 32 //console.log(1 == 1); //true 33 34 var a = 10; 35 36 //console.log(a == 4); //false 37 38 //console.log("1" == 1); //true 39 40 //console.log(true == "1"); //true 41 42 //console.log(null == 0); //false 43 44 /* 45 * undefined 衍生自 null 46 * 所以这两个值做相等判断时,会返回true 47 */ 48 //console.log(undefined == null); 49 50 /* 51 * NaN不和任何值相等,包括他本身 52 */ 53 //console.log(NaN == NaN); //false 54 55 var b = NaN; 56 57 //判断b的值是否是NaN 58 //console.log(b == NaN); 59 /* 60 * 可以通过isNaN()函数来判断一个值是否是NaN 61 * 如果该值是NaN则返回true,否则返回false 62 */ 63 //console.log(isNaN(b)); 64 65 //console.log(10 != 5); //true 66 //console.log(10 != 10); //false 67 //console.log("abcd" != "abcd"); //false 68 //console.log("1" != 1);//false 69 70 //console.log("123" === 123);//false 71 //console.log(null === undefined);//false 72 73 console.log(1 !== "1"); //true 74 75 76 </script> 77 </head> 78 <body> 79 </body> 80 </html>