JavaScript 运算符参考
-
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 尝试 % 取模 (取余数) x = y % 2 y = 5 x = 1 尝试 ++ 递增 x = ++y x = y++ y = 6 y = 6 x = 6 x = 5 尝试 -- 递减 x = --y x = y-- y = 4 y = 4 x = 4 x = 5 尝试 有关算术运算符的教程,请阅读我们的JavaScript算术教程。 -
-
-
比较运算符
在逻辑语句中使用比较运算符来确定变量或值之间的相等或差异。鉴于x = 5,下表解释了比较运算符:操作符 描述 比较 结果 尝试 == 相等 x == 8 x == 5 false true 尝试 === 值和类型相等 x === "5" x === 5 false true 尝试 != 不等 x != 8 true 尝试 !== 值或类型不等 x !== "5" x !== 5 true false 尝试 > 大于 x > 8 false 尝试 < 小于 x < 8 true 尝试 >= 大于或等于 x >= 8 false 尝试 <= 小于或等于 x <= 8 true 尝试 有关比较运算符的教程,请阅读我们的JavaScript比较教程。 -
条件(三元)运算符
条件运算符根据条件为变量赋值。语法 例子 尝试 变量 = (条件) ? 值1 : 值2 voteable = (age < 18) ? "太年轻":"够老了"; 尝试 示例说明:如果变量“age”是一个低于18的值,变量“voteable”的值将是“太年轻”,否则voteable的值将是“够老了”。 -
-
JavaScript按位运算符
位操作符使用32位数字。操作中的任何数字操作数都将转换为32位数。结果将转换回JavaScript数字。操作符 描述 例子 等价 结果 十进制 & 按位与 x = 5 & 1 0101 & 0001 0001 1 | 按位或 x = 5 | 1 0101 | 0001 0101 5 ~ 按位非 x = ~ 5 ~0101 1010 10 ^ 按位异或 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" // 返回 string typeof 3.14 // 返回 number typeof NaN // 返回 number typeof false // 返回 boolean typeof [1, 2, 3, 4] // 返回 object typeof {name:'John', age:34} // 返回 object typeof new Date() // 返回 object typeof function () {} // 返回 function typeof myCar // 返回 undefined (如果 myCar 没有声明) typeof null // 返回 object
请注意:- NaN的数据类型是数字
- 数组的数据类型是object
- 日期的数据类型是对象
- null的数据类型是object
- 未定义变量的数据类型undefined
您不能使用typeof来定义JavaScript对象是否是数组(或日期)。
-
del操作符
del操作符删除一个对象的属性:
尝试一下var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}; delete person.age; // 删除 person["age"];
delete运算符删除属性的值和属性本身。删除后,该属性在再次添加之前无法使用。delete运算符旨在用于对象属性。它对变量或函数没有影响。注意:不应在预定义的JavaScript对象属性上使用delete运算符。它可能会导致应用程序崩溃 -
in操作符
in操作符果指定的属性是在指定的对象,否则为false运算符返回true:
尝试一下// 数组 var cars = ["Saab", "Volvo", "BMW"]; "Saab" in cars // 返回 false (指定索引号而不是值) 0 in cars // 返回 true 1 in cars // 返回 true 4 in cars // 返回 false (does not exist) "length" in cars // 返回 true (length is an Array property) // 对象 var person = {firstName:"John", lastName:"Doe", age:50}; "firstName" in person // 返回 true "age" in person // 返回 true // 预定义的对象 "PI" in Math // 返回 true "NaN" in Number // 返回 true "length" in String // 返回 true
-
instanceof操作符
instanceof操作符如果指定的对象是指定对象的实例返回true:
尝试一下var cars = ["Saab", "Volvo", "BMW"]; cars instanceof Array; // 返回 true cars instanceof Object; // 返回 true cars instanceof String; // 返回 false cars instanceof Number; // 返回 false
-
void操作符
void操作符计算表达式并返回undefined。此运算符通常用于获取未定义的原始值,使用“void(0)”(在不使用返回值的情况下计算表达式时很有用)。
尝试一下<a href="javascript:void(0);"> Useless link </a> <a href="javascript:void(document.body.style.backgroundColor='red');"> 单击我将body的背景颜色更改为红色 </a>