开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 1 天,点击查看活动详情*
04-JavaScript常见的运算符
认识运算符
计算机最基本的操作就是执行运算, 执行运算时就需要使用运算符来操作。如下图所示,两种运算方式所使用的符号都是运算符
认识运算元
首先我们得知道什么是运算元——运算符的应用对象。说的通俗一点,比如上图:20和30就是两个运算元。在一些书籍中,作者还会把运算元叫作参数
- 有时候一个运算符对应的只有一个运算元,我们就把它叫作一元运算符
- 有时候一个运算符拥有两个运算元,那么它是二元运算符
在一元运算符的情况下,我们通常会使用-
和+
,-
相对来说使用的多一点点
JavaScript中的运算
算术运算符
- 算术运算符用在数学表达式中, 它的使用方式和数学中也是一致的
- 算术运算符是对数据进行计算的符号
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
+ | 加法 | 2 + 3 | 5 |
+ | 连接字符串 | '中'+ '国' | '中国' |
- | 减法 | 2 - 3 | -1 |
* | 乘法 | 2 * 3 | 6 |
/ | 除法 | 5 / 2 | 2.5 |
% | 取余数 | 5 % 2 | 1 |
** | 幂( ES7) | 2 ** 3 | 8 |
取余%和求幂
取余的运算符是%,跟百分号没关系!a % b的结果是a整除b的余数
求幂运算a ** b,通俗点来讲就是把a提升至b次幂(这是ES7里面的语法,也叫作ES2016,后续小彭会单独列出来讲)
赋值运算符
前面我们使用的=
其实也是一个运算符,被称之为赋值( assignments )运算符
这里我们要强调一下,很多初学者在刚开始学赋值运算符的时候,总是习惯从左往右看,这种看法是错误的。我们在学习赋值运算符的时候,要习惯性的从右往左看,见下图
在上面的图片中我们可以看到,我们用var
定义了一个a变量
,然后我们把3这个值赋给了a变量,因此这时候在console台
打印输出的a变量
的值是3而并非undefined
链式赋值
顾名思义,看到这个名字就意味着是一条链式的复制方式,见下图
在这张图里面我们可以看到,我们用var
定义了3个变量,在接下来的赋值运算中,我们将4的值赋给了c,c的值赋给了b,以此类推,最后三个变量打印输出的结果都是4
但是一般我们不建议这么写,因为可读性实在是太差了,同事接手你的代码会疯的🤣
原地修改
在日常开发中,我们可能会遇到变量名写错了需要修改,但是业务又不允许我们新建变量的情况,所以我们这个时候就需要用到原地修改这个办法
在图片中我们可以看到,我们定义了一个变量n并且赋值为10,在接下来的操作中,我们首先将n的值+5并且赋值给n,然后将n的值*2赋值给b,这就是原地修改的方法
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
= | 赋值 | a = 5 | 5 |
+= | 加后赋值 | a = 5, a += 2 | 7 |
- = | 减后赋值 | a = 5, a -= 2 | 3 |
*= | 乘后赋值 | a = 5; a *= 2 | 10 |
/= | 除后赋值 | a = 5; a /= 2 | 2.5 |
%= | 取模 (余数)后赋值 | a = 5; a %= 2 | 1 |
**= | 幂后赋值 | a = 5; a **= 2 | 25 |