JS运算符

1.算数运算符

+ 加

- 减

* 乘

/ 除

% 取余

** 幂运算 2 ** 4 = 2^{4},2 ** .5 = 根号2

2.赋值运算符

等于

??=  空赋值,只有在变量的值为null或undefined时才会给变量赋值

+=  a += 1相当于a = a + 1

-=  a -= 1相当于a = a - 1

*=  a *= 1相当于a = a * 1

/=  a /= 1相当于a = a / 1

%=  a %= 1相当于a = a % 1

**=  a **= 1相当于a = a ** 1

let a = 7
a ??= 5
console.log(a); //7
let b = null
b ??= 100
console.log(b); //100

3. 自增自减运算符

++a与a++

使用后会使原变量的值立刻+1

它们不同的是++a的值为+1后的值,a++的值为原来变量的值

--a与a--

使用后会使原变量的值立刻-1

它们不同的是--a的值为-1后的值,a--的值为原来变量的值

let a = 2
let b = a++
console.log(a,b); //3 2
//++a的值为3

let n = 5
let result = n++ + ++n + n
console.log(result); //5+(6+1)+7=19

4.逻辑运算符

!   

逻辑非:对一个布尔值进行取反操作,如果该值不是布尔值则自动转为布尔值后再取反,!!用于其他类型转布尔值。

&& 

逻辑与:当左右都为true时才返回true,只要有一个为false,则返回false。当左边为false时直接返回false对应的值,不执行右边的语句;当左边为true时,直接返回右边的值。(找false,找到就返回,找不到就返回右边)

||  

逻辑或:当左右都为false时才返回false,只要有一个true,就返回true。当左边为true时,直接返回true对应的值,不执行右边,当左边为false时,直接返回右边的值。(找true,找到就返回,找不到就返回右边)

console.log(1 && 2); //2
console.log(1 && 0); //0
console.log(0 && 1); //0
console.log(NaN && null); //NaN
console.log(1 || 2); //1
console.log(0 || 2); //2
console.log(1 || 0); //1
console.log(NaN || undefined); //undefined

5.关系运算符

>,>=,<,<=

  • 用于比较左右两边的值是否成立,成立则返回true,否则返回false
  • 当对非数值进行关系运算时,会先将左右两边转换为数值再进行比较。
  • 当左右两边都是字符串时,它不会转换为数字,而会逐位的比较Unicode编码。
console.log("a" < "b");//true
console.log("abc" > "b");//false
console.log(1 > false);//true
console.log(true > 0);//true

6.相等运算符

==,=== ,!=,!==

  • 相等返回true,不相等返回false
  • ==会在判断前进行类型转换,通常转换为number类型,转换后再进行判断。
  • null和undefined用==判断时返回true,用===判断时返回false。
  • 只要有NaN进行判断,一定返回false。
  • ===不会进行类型判断,类型不一样直接返回false
  • !=,!==和相等是相反的
console.log(1 == true); //true
console.log(1 === true); //false
console.log(null == undefined); //true
console.log(null === undefined);//false
console.log(NaN == "666");//false
console.log(null == NaN);//false

7.条件运算符

条件表达式?表达式1:表达式2

当条件表达式为true时返回表达式1,为false时返回表达式2。 

let a = 3,b = 7
let result = a > 5 ? a : b
console.log(result);//7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值