最新的Web開發教程
 

JavaScript運算符引用


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>
試一試»