一、乘性運算子
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語句。

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

WebStorm Mac版
好用的JavaScript開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器