谁来告诉我什么是运算符

204 阅读3分钟

运算符

就是在代码里面进行运算的时候使用的符号,不光只是数学运算,我们在JS里面还有很多的运算方式

\

数学运算符

1.+

只有符号两边都是数字的时候才会进行加法运算

只要符号任意一边是字符串类型,就会进行字符串拼接

2.-

会执行减法运算

会自动把两遍都转成数字进行运算

3.*

会执行乘法运算

会自动把两遍都转换成数字进行运算

4./

会执行除法运算

会自动把两遍都转换成数字进行运算

5.%

会取余 比如10/3=3.111 会取余数 1

console.log(10%1) 打印出来就是 1

\

赋值运算符

1.=

就是把 = 右边的赋值给等号左边的变量名

var num = 100

就是把100赋值给num变量

那么num变量的值就是100

2.+=

var a = 10

a += 10

console.log(a) // =>20

3.-=

var a = 10

a -= 3

console.log(a) // =>7

a -= 10 等价于 a= a - 10

4.%=

var a =10

a%=3

console.log(a) //=>1 取余

\

比较运算符

1.==

○比较符号两边的值是否相等,不管数据类型

1 == ‘1’

两个的值是一样的,所以得到true

  1. ===

○比较符号两边的值和数据类型是否都相等

1 === ‘1’

两个值虽然一样,但是因为数据类型不一样,所以得到false

  1. !=

○比较符号两遍的值是否不等

1 != '1'

因为两边的值是相等的,所以比较他们不等的时候得到false

  1. !==

○比较符号两边的数据类型的值是否不等

1 !== '1'

因为两遍的数据类型确实不一样,所以得到true

  1. =

○比较左边的值是否 大于或等于 右边的值

1 >= 1 结果是true

1 >= 0 结果是true

1 >= 2 结果是false

  1. <=

○比较左边的值是否 小于或等于 右边的值

1 <= 2 结果是true

1 <= 1 结果是true

1 <= 0 结果是false

○比较左边的值是否 大于 右边的值

1 > 0 结果是true

1 > 1 结果是false

1 > 2 结果是false

  1. <

○比较左边的值是否 小于 右边的值

1 < 2 结果是true

1 < 1 结果是false

1 < 0 结果是false

\

逻辑运算符

&& 逻辑与,逻辑且

返回方式:

前一个为真,返回后一个

前一个为假,返回前一个

var a = 1 && 0

console.log(a) //值为0

var a1 = 0 && 1

console.log(a1) //值为0

|| 逻辑或

返回方式:

前一个为真,返回前一个

前一个为假,返回后一个

var a = 1 || 0

console.log(a) //值为1

var a = 0 || 1

console.log(a) //值为1

! 逻辑非,取反

var a = 2

console.log(!a) //值为false

自增自减

就是在变量名 前面或者后面 写上 ++ --

++在前先自增,再参与运算

++在后先参与运算,再自增

var a = 2

var b = a++ //值为 b == 2 a == 3

var c = ++a //值为 c == 4 a == 4

\

\

分支语句

基于一个条件,执行一段代码

if分支语句

通过一个 if 语句来决定代码是否执行

语法:if (条件) { 要执行的代码 }

通过()里面的条件是否成立来决定 {} 里面的代码是否执行

// 条件为 true 的时候执行 {} 里面的代码

var a = 1

if (true) {

alert('因为条件是true,我会执行')

}

\

// 条件为 false 的时候不执行 {} 里面的代码

if (false) {

alert('因为条件不是true,我不会执行')

}

\

switch 分支语句

也是条件判断语句的一种

是对于某一个变量的判断

语法:

switch (要判断的变量) {

case 情况1:

情况1要执行的代码

break;

case 情况2:

情况2要执行的代码

break;

case 情况3:

情况3要执行的代码

break;

default:

上述情况都不满足的时候执行的代码

}

要判断某一个变量 等于 某一个值的时候使用

\

三元表达式

语法: 条件?条件为真时执行*(只能一行):条件为假时执行(只能一行)

true ? console.log('条件为真') : console.log('条件为假')