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