JavaScript 學習筆記之操作符(續)_基礎知識
一、乘性運算子
1、乘法:*
乘法運算子的一些特殊法則:
如果運算元都是數值,依照常規的乘法計算,如果乘積超過了ECMAscript數值的表示範圍,則傳回infinity或-infinity
如果有一個運算元是NaN,那回傳結果就是NaN
如果是infinity與0相乘,返回NaN
如果infinity與非0數相乘,則回傳infinity或-infinity
infinity與infinity相乘,返回infinity
如果有一個運算元不是數值,後台會先呼叫number()轉換為數值,再套用上面的規則
2、除法:/
除法運算子的一些特殊規則:
如果運算元都是數值,依照常規的除法計算,如果商數超過了ECMAscript數值的表示範圍,則傳回infinity或-infinity
如果有一個運算元是NaN,那回傳結果就是NaN
如果是infinity被infinity除,回NaN
如果是0被0除,返回NaN
如果是非0的有限數被0除,則回傳infinity或-infinity
如果是infinity被非0的有限數除,回傳infinity或-infinity
如果有一個運算元不是數值,後台會先呼叫number()轉換為數值,再套用上面的規則
3、求模(餘數):%
求模運算子的一些特殊規則:
如果運算元都是數值,依照常規的除法計算,則傳回除得的餘數
如果被除數是無窮大,除數是有限數,那麼回傳結果就是NaN
如果被除數是有限大,除數是0,則回傳NaN
如果是infinity被infinity除,回NaN
若被除數是有限大而除數是無窮大,則回傳被除數
如果被除數是0,則回傳0
如果有一個運算元不是數值,後台會先呼叫number()轉換為數值,再套用上面的規則
二、加性運算子
1、加法運算子:
如果運算元中有一個是字串:
如果兩個運算元都是字串,那麼將第二個運算元拼接到第一個運算元後面。
如果只有一個運算元是字串,那麼將另一個運算元轉換為字串後再執行上述規則
2、減法運算符:-
如果有一個運算元是字串、布林值、null或undefined,則在背景先呼叫number()將其轉換為數值,然後執行減法。
三、關係運算子
大於:>
小於:
大於等於:>=
小於等於:
關係運算子特殊規則:
如果運算元是字串,比較兩個字串對應的字元編碼
如果操作數一個是數值,則先將另一個操作數轉換為數值,再進行比較
任何數字與NaN進行比較,結果都是false
四、相等運算子
1、相等與不相等:==和! =
這兩個運算子都會先將運算元轉換為相同型別再進行比較
轉換時,相等和不相等運算子遵循以下規則:
如果其中一個運算元的類型為 Boolean ,那麼,首先將它轉換為數字類型,false 轉換為 0, true 將轉換為 1。
如果其中一個操作數的類型是字串,另外一個為數字類型,那麼,將字串轉換為數字進行比較。
如果其中一個操作數是對象,另一個不是,則先呼叫操作數的valueof()方法,得到基本型別值之後再比較
比較時的特殊規則:
null 和 undefined 是相等的。
null 和 undefined 不會轉換為任何其他類型
如果任何一個操作的結果為 NaN,那麼相等比較回傳 false,不相等比較回傳 true。請注意,即使兩個運算元都為 NaN,傳回結果一樣是 false,也就是說,NaN 不等於 NaN。
如果兩個操作數都是對象,那麼比較它們引用的值,如果引用同一個對象,那麼,返回真,否則,返回假。
2、全等和不全等:==和===
==會將操作數轉換成相同型態比較;
===不會轉換型,直接比較
例如:
var result1 = ("55" == 55);
var result2 = ("55" === 55);
alert(result1);//true
alert(result2); //false"55"是字串,55是數字,型別不一樣
五、條件運算子
變數=條件表達式?真值:假值
首先會對條件表達式求值,如果結果是真,則把真值賦給變量,如果為假則把假值賦給變數。
六、賦值運算子
1、簡單賦值運算子:=
var num1 = 10;
num=num1 10;
2.複合賦值運算子: =、-=、*=、/=、%=、>>=、>>=
七、逗號運算子
逗號運算子可以在一條語句中執行多個操作
用途:1、宣告多個變數
var num1=1,num2=2,num3=3;
2、賦值
var num=(0,1,2,3)//num=3
在用於賦值運算時,逗號運算子總是傳回最後一個表達式的值。
練習區:
警報(空白==未定義);
警報(空白===未定義);
警報(「NoN」==NoN);
警報(「NaN」===NaN);
警報(NoN == NoN);
警報(NaN === NaN);
警報(NoN!=NoN);
警報(NoN !== NoN);
警報(假== 0);
警報(假=== 0);
警報(真== 1);
警報(真=== 1);
警報(空白== 0);
警報(未定義== 0);
警報(5==「5」);
警報(5 ===「5」);
腳本>
如果你想了解你的網站,如果你想使用javascript,你可以建立一個新帳戶。講解javascript語句。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如何使用WebSocket和JavaScript實現線上語音辨識系統引言:隨著科技的不斷發展,語音辨識技術已成為了人工智慧領域的重要組成部分。而基於WebSocket和JavaScript實現的線上語音辨識系統,具備了低延遲、即時性和跨平台的特點,成為了廣泛應用的解決方案。本文將介紹如何使用WebSocket和JavaScript來實現線上語音辨識系

WebSocket與JavaScript:實現即時監控系統的關鍵技術引言:隨著互聯網技術的快速發展,即時監控系統在各個領域中得到了廣泛的應用。而實現即時監控的關鍵技術之一就是WebSocket與JavaScript的結合使用。本文將介紹WebSocket與JavaScript在即時監控系統中的應用,並給出程式碼範例,詳細解釋其實作原理。一、WebSocket技

如何利用JavaScript和WebSocket實現即時線上點餐系統介紹:隨著網路的普及和技術的進步,越來越多的餐廳開始提供線上點餐服務。為了實現即時線上點餐系統,我們可以利用JavaScript和WebSocket技術。 WebSocket是一種基於TCP協定的全雙工通訊協議,可實現客戶端與伺服器的即時雙向通訊。在即時線上點餐系統中,當使用者選擇菜餚並下訂單

如何使用WebSocket和JavaScript實現線上預約系統在當今數位化的時代,越來越多的業務和服務都需要提供線上預約功能。而實現一個高效、即時的線上預約系統是至關重要的。本文將介紹如何使用WebSocket和JavaScript來實作一個線上預約系統,並提供具體的程式碼範例。一、什麼是WebSocketWebSocket是一種在單一TCP連線上進行全雙工

JavaScript和WebSocket:打造高效的即時天氣預報系統引言:如今,天氣預報的準確性對於日常生活以及決策制定具有重要意義。隨著技術的發展,我們可以透過即時獲取天氣數據來提供更準確可靠的天氣預報。在本文中,我們將學習如何使用JavaScript和WebSocket技術,來建立一個高效的即時天氣預報系統。本文將透過具體的程式碼範例來展示實現的過程。 We

JavaScript教學:如何取得HTTP狀態碼,需要具體程式碼範例前言:在Web開發中,經常會涉及到與伺服器進行資料互動的場景。在與伺服器進行通訊時,我們經常需要取得傳回的HTTP狀態碼來判斷操作是否成功,並根據不同的狀態碼來進行對應的處理。本篇文章將教你如何使用JavaScript來取得HTTP狀態碼,並提供一些實用的程式碼範例。使用XMLHttpRequest

用法:在JavaScript中,insertBefore()方法用於在DOM樹中插入一個新的節點。這個方法需要兩個參數:要插入的新節點和參考節點(即新節點將要插入的位置的節點)。

JavaScript是一種廣泛應用於Web開發的程式語言,而WebSocket則是一種用於即時通訊的網路協定。結合二者的強大功能,我們可以打造一個高效率的即時影像處理系統。本文將介紹如何利用JavaScript和WebSocket來實作這個系統,並提供具體的程式碼範例。首先,我們需要明確指出即時影像處理系統的需求和目標。假設我們有一個攝影機設備,可以擷取即時的影像數
