运算符
# 运算符
# JavaScript 算术运算符
算术运算符用于执行变量与/或值之间的算术运算。给定y=5
,下面的表格解释了这些算术运算符:
运算符 | 描述 | 例子 | 结果 |
---|---|---|---|
+ | 加 | x=y+2 | x=7 |
- | 减 | x=y-2 | x=3 |
* | 乘 | x=y*2 | x=10 |
/ | 除 | x=y/2 | x=2.5 |
% | 求余数 (保留整数) | x=y%2 | x=1 |
++ | 累加 | x=++y | x=6 |
-- | 递减 | x=--y | x=4 |
不推荐使用繁杂的表达式来实现数据运算
第二版不推荐写类似于x=++y
、x=--y
的表达式来实现业务,这种写法可读性很差。不推荐读者在写插件代码时使用这样的写法。
# JavaScript 赋值运算符
赋值运算符用于给 JavaScript 变量赋值。给定x=10
和y=5
,下面的表格解释了赋值运算符:
运算符 | 例子 | 等价于 | 结果 |
---|---|---|---|
= | x=y | x=5 | |
+= | x+=y | x=x+y | x=15 |
-= | x-=y | x=x-y | x=5 |
*= | x*=y | x=x*y | x=50 |
/= | x/=y | x=x/y | x=2 |
%= | x%=y | x=x%y | x=0 |
特别的(我讨厌特别的),+可以连接两个字符串,而且,如果把数字和字符串相加会发生什么呢?可以试试(前面的例子中好像用到了)。
用数字与字符串相加来实现类型转换
如果你还有没有掌握好基本的数据相加,请在熟练掌握用JavaScript
实现数据的四则运算后再来阅读此部分。
第二版是推荐使用字符串与数字相加写法的。字符串和数字相加后,所得的结果是字符串,中间发生了类型转换。这可能对初学者产生混淆,但是这个运算技巧很适合做类型转换。如果我们要把一个数值快速变成字符串,可以使用以下的方式实现:
let number = 1121;
number = number + '';
2
number变量此时变成了字符串。这种写法是JavaScript实战内常见的类型转换写法。初学者可能对此产生疑惑。如果你尚不能理解,甚至是厌恶这样的写法,你还可以使用这种稍微笨重的方式实现类型转换:
let number = 1121;
number = String(number);
2
使用构造函数的方式直接转换变量的类型。
相似的,字符串转换成数字时,还可以使用以下的方式实现:
let str = "1121";
str = str * 1;
2
# 比较运算符
比较运算符在逻辑语句中使用,以测定变量或值是否相等,它们的返回值是一个布尔型的数据。给定 x=5,下面的表格解释了比较运算符:
运算符 | 描述 | 例子 |
---|---|---|
== | 等于 | x==8 为 false |
=== | 全等(值和类型) | x===5 为 true;x==="5" 为 false |
!= | 不等于 | x!=8 为 true |
> | 大于 | x>8 为 false |
< | 小于 | x<8 为 true |
>= | 大于或等于 | x>=8 为 false |
<= | 小于或等于 | x<=8 为 true |
# 逻辑运算符
逻辑运算符用于测定变量或值之间的逻辑,它们的返回值是一个布尔型的数据。给定 x=6 以及 y=3,下表解释了逻辑运算符:
运算符 | 描述 | 例子 |
---|---|---|
&& | and | (x < 10 && y > 1) 为 true |
| | | or | (x==5 | | y==5) 为 false |
! | not | !(x==y) 为 true |
总之,这两种都是用来进行逻辑判断的。
# 三目运算符
最后,还有一种~特~殊~的~运算符,? : 。
variablename=(condition)?value1:value2
这个格式很,,,总之我不经常使用,因为它的功能完全可以用if else来代替,例如:
greeting=(visitor=="PRES")?"Dear President ":"Dear ";
如果变量 visitor
中的值是 "PRES"
,则向变量 greeting
赋值 "Dear President "
,否则赋值 "Dear"
。不过这东西形式短小精悍,特别适合用在填空的地方,(比如游戏的伤害公式里面,有人这么用过)。