JavaScript <= 小於等於
小於等於運算子可以比較左右兩側運算數的大小。
當左側運算數小於或者等於右側運算數時返回true,否則返回false。
JavaScript中的<=運算子與數學中對應的運算子相比更加複雜,不但數字之間可以比較大小,字串也可以比較,甚至不同型別資料也可以進行比較,具體規則,下面會通過程式碼例項一一演示,並且最後會給出總結。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(5<=5); console.log(5<=3); console.log(5<=8);
程式碼執行效果截圖如下:
數字之間的比較非常簡單,左側數字小於或者等於右邊數字,返回true,否則返回false。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log("4"<=5);
程式碼執行效果截圖如下:
字串與數字之間也可以比較大小,規則如下:
首先將字串轉換為數字,然後再進行比較,所以上述程式碼返回true。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(true <= 0); console.log(true <= 2); console.log(false <= 0); console.log(false <= -1); console.log(false <= -2);
如果是布林值與數字比較,那首先將布林值轉換為數字,規則如下:
如果是true,則轉換為1,false轉換為0,然後再進行比較。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log("ac" <= "ab");
字串之間也可以比較大小,規則如下:
(1).字串比較大小,事實是比較組成字串的字元ASCII碼的大小。
(2).從左到右依次比較字元ASCII碼的大小,直到決出勝負位置。
(3).比如先從第一個字元比較,由於都是"a",打成平手,然後再比較第二個,"c"的ASCII大於"b"的。
(4).所以返回false。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log("ac" <= "db");
程式碼執行效果截圖如下:
只要前面的已經取得決定性比較結果,後面的就沒有必要比較了。
就如同高位數字已經取勝,低位數字大小已經不再重要。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let obj={ valueOf:function(){return 5} } console.log(obj <= 4);
程式碼執行效果截圖如下:
上述程式碼是一個引用型別資料obj與值型別資料4之間比較大小。
首先會將引用型別資料轉換為值型別,實質就是呼叫了valueOf方法。
最終比較的是數字5與數字4,所以列印結果為false。
比較規則最終總結:
(1).如果運算元是數字,直接比較它們之間大小關係。
(2).如果運算元是數字和數字字串,首先將數字字串轉換為數字。
(3).如果運算元是數字和布林值,首先將true轉換為0,false轉換為0。
(4).如果運算元是字串,則比較字元的ASCII碼大小。
(5).如果運算元有引用型別,那麼首先將其轉換為值型別再進行比較。
相關文章
- JavaScript >= 大於等於JavaScript
- python比較運算子中大於等於且小於等於的表達方式Python
- JavaScript (<) 小於運算子JavaScript
- 關於 JavaScript 字串的一個小知識JavaScript字串
- 小程式開發選擇公司等於選擇人
- 關於JavaScript除錯的十來個小TipsJavaScript除錯
- 關於dom(javascript)JavaScript
- 力扣刷題——3007.價值和小於等於 K 的最大數字力扣
- MyBatis SQL處理大於、小於號MyBatisSQL
- APP開發,不快等於DieAPP
- 誤讀資料等於自殺
- JavaScript (>) 大於運算子JavaScript
- 關於javascript中的thisJavaScript
- 關於JavaScript的困惑JavaScript
- 基於機率判斷矩陣A*B是否等於C矩陣
- 微軟sql SERVER 2005一個cache的BUG引起的問題(SP補丁包小於等於2)微軟SQLServer
- 過載小於號
- Dart之於JavaScript,正如C#之於C++DartJavaScriptC#C++
- 關於JavaScript變數提升JavaScript變數
- 關於Javascript的des加密JavaScript加密
- 泛微oa流程表單之請假單(判斷請假結束時間不能小於等於請假開始時間)
- 關於Servlet小總結Servlet
- 關於new 很多小物件物件
- 小於n的最大數
- 網路直播:玩遊戲等於“創作”?遊戲
- 設定div高度等於螢幕高度
- 關於ModelSaveAction等類的問題
- mybatis中 if 標籤 test 等於判斷MyBatis
- 關於JavaScript中arguments的用法JavaScript
- 關於javascript的this指向問題JavaScript
- 關於 JavaScript 錯誤捕獲JavaScript
- 基於JavaScript的機器學習系統JavaScript機器學習
- 網際網路創業者的誤區:小而美等於產品簡單創業
- 關於分享的小見解
- Swift 小心字典Value等於nil(容易出錯)Swift
- 3分鐘短文:Laravel路由加模型等於?Laravel路由模型
- 如何判斷一個值是否等於NaNNaN
- 非 A 或 B 等價於非 A 且非 B