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