js 比较运算符


比较
        < (小于)、> (大于)、<= (小于等于)、>= (大于等于)、== (等于)、!= (不等于),返回 true,false
/*
 * 通过关系运算符可以比较两个值之间的大小关系,
 *     如果关系成立它会返回true,如果关系不成立则返回false
 *
 * > 大于号
 *     - 判断符号左侧的值是否大于右侧的值
 *     - 如果关系成立,返回true,如果关系不成立则返回false
 *
 * >= 大于等于
 *     - 判断符号左侧的值是否大于或等于右侧的值
 *
 * < 小于号
 * <= 小于等于
 *
 * 非数值的情况
 *     - 对于非数值进行比较时,会将其转换为数字然后在比较
 *     - 如果符号两侧的值都是字符串时,不会将其转换为数字进行比较
 *         而会分别比较字符串中字符的Unicode编码
 */

var result = 5 > 10;//false

result = 5 > 4; //true

result = 5 > 5; //false

result = 5 >= 5; //true

result = 5 >= 4; //true

result = 5 < 4; //false

result = 4 <= 4; //true

//console.log("result = "+result);

//console.log(1 > true); //false
//console.log(1 >= true); //true
//console.log(1 > "0"); //true
//console.log(10 > null); //true
//任何值和NaN做任何比较都是false
//console.log(10 <= "hello"); //false
//console.log(true > false); //true

//console.log("1" < "5"); //true
//console.log("11" < "5"); //true

//比较两个字符串时,比较的是字符串的字符编码
//console.log("a" < "b");//true
//比较字符编码时是一位一位进行比较
//如果两位一样,则比较下一位,所以借用它来对英文进行排序
//console.log("abc" < "bcd");//true
//比较中文时没有意义
//console.log("戒" > "我"); //true

//如果比较的两个字符串型的数字,可能会得到不可预期的结果
//注意:在比较两个字符串型的数字时,一定一定一定要转型
console.log("11123123123123123123" < +"5"); //true  

...

/*
 * 相等运算符用来比较两个值是否相等,
 *     如果相等会返回true,否则返回false
 *
 * 使用 == 来做相等运算
 *     - 当使用==来比较两个值时,如果值的类型不同,
 *         则会自动进行类型转换,将其转换为相同的类型
 *         然后在比较
 * 不相等
 *      不相等用来判断两个值是否不相等,如果不相等返回true,否则返回false
 *     - 使用 != 来做不相等运算
 *     - 不相等也会对变量进行自动的类型转换,如果转换后相等它也会返回false
 *
 *         
 *  ===
 *         全等
 *         - 用来判断两个值是否全等,它和相等类似,不同的是它不会做自动的类型转换
 *             如果两个值的类型不同,直接返回false
 *     !==
 *         不全等
 *         - 用来判断两个值是否不全等,和不等类似,不同的是它不会做自动的类型转换
 *             如果两个值的类型不同,直接返回true
 */

//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

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM