JavaScript的運算符用於賦值,比較值,執行算術運算等。
JavaScript的算術運算符
算術運算符用於執行變量和/或值之間的運算。
鑑於y = 5 ,下表說明了算術運算符:
操作者 | 描述 | 例 | 結果y中 | 結果X | 嘗試一下 |
---|---|---|---|---|---|
+ | 加成 | X = Y + 2 | Y = 5 | X = 7 | 嘗試一下 ” |
- | 減法 | X = Y - 2 | Y = 5 | X = 3 | 嘗試一下 ” |
* | 乘法 | X = Y * 2 | Y = 5 | X = 10 | 嘗試一下 ” |
/ | 師 | X = Y / 2 | Y = 5 | X = 2.5 | 嘗試一下 ” |
% | 模數(division remainder) | X = Y%2 | Y = 5 | X = 1 | 嘗試一下 ” |
++ | 增量 | X = ++ÿ | Y = 6 | X = 6 | 嘗試一下 ” |
X = Y ++ | Y = 6 | X = 5 | 嘗試一下 ” | ||
- | 遞減 | X = --y | Y = 4 | X = 4 | 嘗試一下 ” |
X = y-- | Y = 4 | X = 5 | 嘗試一下 ” |
對於有關算術運算符的教程,請閱讀我們的JavaScript算術教程 。
JavaScript的賦值運算符
賦值運算符使用賦值給變量的JavaScript。
鑑於x = 10和y = 5 ,下表說明了賦值運算符:
操作者 | 例 | 與...一樣 | 結果X | 嘗試一下 |
---|---|---|---|---|
= | X = Y | X = Y | X = 5 | 嘗試一下 ” |
+ = | X + = Y | X = X + Y | X = 15 | 嘗試一下 ” |
- = | X - = Y | X = X - ÿ | X = 5 | 嘗試一下 ” |
* = | X * = Y | X = X * Y | X = 50 | 嘗試一下 ” |
/ = | X / = Y | X = X / Y | x = 2時 | 嘗試一下 ” |
%= | X%= Y | X = X%Y | x = 0的 | 嘗試一下 ” |
對於有關賦值運算符的教程,請閱讀我們的JavaScript分配教程 。
JavaScript字符串操作符
+運算符,和+ =操作符也可以被用來連接(add)的字符串。
鑑於text1 = "Good " , text2 = "Morning" , 和文字3 = ""下面的表格說明了運營商:
操作者 | 例 | 文本1 | 文本2 | 文字3 | 嘗試一下 |
---|---|---|---|---|---|
+ | 文字3 =文本1 + text2的 | “好” | “早上” | “早上好” | 嘗試一下 ” |
+ = | 文本1 + = text2的 | “早上好” | “早上” | “” | 嘗試一下 ” |
比較運算符
比較運算符在邏輯語句用來確定變量或值之間的相等或差別。
鑑於x = 5 ,下表說明了比較運算符:
操作者 | 描述 | 對比 | 返回 | 嘗試一下 |
---|---|---|---|---|
== | 等於 | X == 8 | 假 | 嘗試一下 ” |
X == 5 | 真正 | 嘗試一下 ” | ||
=== | 等於值且等於類型 | X === "5" | 假 | 嘗試一下 ” |
X 5 === | 真正 | 嘗試一下 ” | ||
!= | 不平等 | X!= 8 | 真正 | 嘗試一下 ” |
!== | 不等於值或不等於類型 | X!== "5" | 真正 | 嘗試一下 ” |
X!== 5 | 假 | 嘗試一下 ” | ||
> | 比...更棒 | X> 8 | 假 | 嘗試一下 ” |
< | 少於 | X <8 | 真正 | 嘗試一下 ” |
> = | 大於或等於 | X> = 8 | 假 | 嘗試一下 ” |
<= | 小於或等於 | X <= 8 | 真正 | 嘗試一下 ” |
對於有關比較運算符的教程,請閱讀我們的JavaScript比較教程 。
條件(Ternary)運算符
條件運算符分配一個值,以基於條件的變量。
句法 | 例 | 嘗試一下 |
---|---|---|
VARIABLENAME = ( condition ) ? 值1: 值2 | voteable = (age < 18) "Too young" :“夠大”; | 嘗試一下 ” |
舉例說明:如果變量"age"是18歲以下的值,該變量的值"voteable"將是"Too young" ,否則voteable的值將是"Old enough" 。
邏輯運算符
邏輯運算符被用來確定變量或值之間的邏輯。
鑑於x = 6 and y = 3 ,下表說明了邏輯運算符:
操作者 | 描述 | 例 | 嘗試一下 |
---|---|---|---|
&& | 和 | (x < 10 && y > 1)為真 | 嘗試一下 ” |
|| | 要么 | (X 5 === ||ý=== 5)為假 | 嘗試一下 ” |
! | 不 | !(x === y)是真 | 嘗試一下 ” |
JavaScript的位運算符
位運算符的32位數字工作。 在操作中的任何數字操作數被轉換成一個32比特數。 將結果轉換回一個JavaScript數。
操作者 | 描述 | 例 | 與...一樣 | 結果 | 十進制 |
---|---|---|---|---|---|
& | 和 | X = 5&1 | 0101 0001 | 0001 | 1 |
| | 要么 | X = 5 | 1 | 0101 | 0001 | 0101 | 五 |
〜 | 不 | X =〜5 | 〜0101 | 1010 | 10 |
^ | XOR | X = 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | 左移 | X = 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | 右移 | X = 5 >> 1 | 0101 >> 1 | 0010 | 2 |
上面的例子中使用的4位無符號的例子。 但JavaScript使用32位有符號數。
正因為如此,在JavaScript中,〜5將不會返回10它將返回-6。
〜00000000000000000000000000000101將返回11111111111111111111111111111010
typeof運算符
typeof運算符返回一個變量,對象,功能或表達的類型:
例
typeof "John"
// Returns string
typeof 3.14
// Returns number
typeof NaN
// Returns number
typeof false
// Returns boolean
typeof [1, 2, 3, 4] // Returns object
typeof {name:'John', age:34}
// Returns object
typeof new Date()
// Returns object
typeof function () {} // Returns function
typeof myCar
// Returns undefined (if myCar is not declared)
typeof null
// Returns object
試一試» 請注意:
- 為NaN的數據類型是數
- 數組的數據類型是對象
- 日期的數據類型是對象
- 空的數據類型是對象
- 未定義的變量的數據類型是未定義的
不能使用的typeof定義如果JavaScript對象是一個數組(or a date) 。
delete操作符
delete運算符刪除一個對象的屬性:
例
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
delete person.age; // or delete person["age"];
試一試» delete運算符刪除屬性的兩個值和屬性本身。
刪除後,它再次被加回之前不能使用的屬性。
刪除操作符被設計成在對象屬性中。 它有變量或函數沒有影響。
注:delete運算符不應該預先定義的JavaScript對象性質。 它可以引起程序崩潰。
IN操作符
如果指定的屬性是在指定的對象,否則為false in運算符返回true:
例
// Arrays
var cars = ["Saab", "Volvo", "BMW"];
"Saab" in cars //
Returns false (specify the index number instead of value)
0 in cars //
Returns true
1 in cars //
Returns true
4 in cars //
Returns false (does not exist)
"length" in cars //
Returns true (length is an Array property)
// Objects
var person = {firstName:"John", lastName:"Doe", age:50};
"firstName" in
person // Returns true
"age" in person
// Returns true
// Predefined objects
"PI" in Math
// Returns true
"NaN" in Number //
Returns true
"length" in String // Returns true
試一試» instanceof運算符
instanceof運算符,如果指定的對象是指定對象的實例返回true:
例
var cars = ["Saab", "Volvo", "BMW"];
cars instanceof Array;
// Returns true
cars instanceof Object; // Returns true
cars instanceof String;
// Returns false
cars instanceof Number; // Returns false
試一試» void運算符
空隙運算符計算表達式並返回未定義 。 該運算符通常用於獲得未定義原始值,使用“ void(0)不使用的返回值計算表達式時有用)。
例
<a href="javascript:void(0);">
Useless link
</a>
<a href="javascript:void(document.body.style.backgroundColor='red');">
Click
me to change the background color of body to red
</a>
試一試»