提示

本文主要介绍 JavaScript 的运算符。@ermo

# 运算符

# 算术运算符

常用的算数运算符一共有5种,分别是:

  • 加法,+
  • 减法,-
  • 乘法,*
  • 除法,/
  • 取余,%

其中加法有一些特殊,只有在 number 类型的数值使用加号时执行的才是数学运算逻辑中加法。

如果是字符串使用加号,则是拼接2个值,返回的类型也是字符串。

其余符号都是正常的数学运算逻辑。

// 2
console.log(1 + 1);
// 字符串11
console.log(1 + '1');
// 3
console.log(4 - 1);
// 16
console.log(4 * 4);
// 2
console.log(4 / 2);
// 1
console.log(5 % 2);

# 赋值运算符

赋值运算符的作用就是将值与变量进行关联,主要有以下5种:

  • =,常用的赋值操作
  • +=,加法运算然后赋值
  • -=,减法运算然后赋值
  • *=,乘法运算然后赋值
  • /=,除法运算然后赋值
  • %=,取余运算然后赋值

+= 为例子,n += 1n = n + 1 的结果是相同的,只是一种简写方式。其余组合赋值符号的原理与 += 相同。

var n = 1;
n += 1;
// 2
console.log(n);

var n1 = 5;
n1 -= 2;
// 3
console.log(n1);

var n2 = 6;
n2 *= 2;
// 12
console.log(n2);

var n3 = 4;
n3 /= 2;
// 2
console.log(n3);

var n4 = 5;
n4 %= 2;
// 1
console.log(n4);

# 比较运算符

比较运算符就是进行2个值的比较,返回布尔类型,常用的比较运算符有:

  • >,大于
  • <,小于
  • >=,大于或等于
  • <=,小于或等于
  • ==,相等
  • ===,完全相等
  • !=,不等于
  • !==,完全不相等

===== 区别在于,前者不比较数据类型,只要值相等就返回 true,后者要同时满足值和数据类型相等,才会返回 true。!= 不等于和 !== 完全不等于原理相同。

// true
console.log(2 > 1);
// true
console.log(1 < 2);
// true
console.log(2 >= 2);
// true
console.log(3 <= 4);
// true
console.log(1 == '1');
// false
console.log(1 === '1');
// false
console.log(2 != '2');
// true
console.log(2 !== '2');

# 条件运算符

条件运算符用于判断条件表达式的结果,常用的有3种类型:

  • &&,且,2个条件同时为 true 则为 true
  • ||,或,2个条件有一个为 true 则为 true
  • !,非,条件为 true 返回 false,条件为 false 返回 true
  • 三目运算符
// false
console.log((2 > 1) && (3 > 4));
// true
console.log((2 > 1) || (3 > 4));
// false
console.log(!(2 > 1));

三目运算符的语法如下:

var 变量 = 条件 ? 表达式1 : 表达式2;

条件返回结果为 true,将表达式1运算后的值赋值给变量,否则将表达式2运算后的值赋值给变量。

var age = (5 > 6) ? 5 : 6;
// 6
console.log(age);

# 自增自减运算符

自增自减运算符分别是 ++--,使用时可以放到变量的前面和后面。

前置 ++ 和后置 ++ 的共同点就是都能把变量自身加1。

前置 ++ 进行变量自身加1,然后参与运算。

后置 ++ 先参与运算,最后将自身加1。

var n = 2;
// 4
console.log(1 + ++n);

var n1 = 2;
// 3
console.log(1 + n1++);

自减运算符 -- 和自身运算符原理相同,不进行赘述。

上次更新: 7/12/2022, 9:44:45 PM