首頁 > web前端 > js教程 > Javascript算符的優先權介紹_基礎知識

Javascript算符的優先權介紹_基礎知識

WBOY
發布: 2016-05-16 17:39:44
原創
1181 人瀏覽過

JavaScript中的運算子優先權是一套規則。此規則在計算表達式時控制運算子執行的順序。具有較高優先權的運算子先於較低優先權的運算子執行。例如,乘法的執行先於加法。

下表以從最高到最低的優先權列出JavaScript運算子。具有相同優先權的運算子會依照從左到右的順序求值。

运算符 描述
. [] () 字段访问、数组下标、函数调用以及表达式分组
-- - ~ ! delete new typeof void 一元运算符、返回数据类型、对象创建、未定义值
* / % 乘法、除法、取模
- 加法、减法、字符串连接
<< >> >>> 移位
< <= > >= instanceof 小于、小于等于、大于、大于等于、instanceof
== != === !== 等于、不等于、严格相等、非严格相等
& 按位与
^ 按位异或
| 按位或
&& 逻辑与
|| 逻辑或
?: 条件
= oP= 赋值、运算赋值
, 多重求值

圓括號可用來改變運算子優先權所決定的求值順序。這意味著圓括號中的表達式應在其用於表達式的其餘部分之前全部被求值。

複製代碼 代碼如下:

z = 78 * (96 3 45)

在該表達式中有五個運算子: =, *, (), , 以及另一個 。根據運算子優先權的規則,它們將以下面的順序求值: (), , , *, =。

先對圓括號內的表達式求值。圓括號中有兩個加法運算子。因為兩個加法運算子具有相同的優先權,從左到右求值。先將 96 和 3 相加,然後將其和與 45 相加,得到的結果為 144。
然後是乘法運算。 78 乘以 144,得到結果為 11232。
A最後是賦值運算。將 11232 賦給 z。

===運算子: 若要是兩個值型別不同,回傳false 若要為兩個值都是number型,且數值相同,傳回true 要是兩個值型別是stirng,而兩個值的String內容相同,回傳true 要是兩個值都是true或都是false,回傳true 要是兩個值都是指向相同的Object,Arraya或function,回傳true 要是兩個值都是null或都是undefined,回傳true ==操作符: 如果兩個值具有相同類型,會進行===比較,則傳回===的比較值如果兩個值不具有相同類型,也有可能傳回true 如果一個值是null另一個值是undefined,則傳回true如果一個值是string另一個是number,會把string轉換成number再進行比較如果一個值是true,會把它轉成1再比較,false會轉成0 如果一個值是Object,另一個是number或者string,會把Object利用valueOf()或toString()轉換成原始型別再進行比較

詳細資料參考:http://www.jb51.net/article/17542.htm

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板