javascript 学习 第4天 操作符

1,操作符,是操作数据值的符号

一元操作符

位操作符

布尔操作符

四则运算操作符

关系操作符

条件操作符

赋值操作符

逗号操作符

2,一元操作符

只能操作一个值的操作符

递增:++

递减:--

前置:立即计算

后置:本行代码执行完成之后才进行计算操作

递增和递减操作会对不同类型的值有影响,先通过Number() 函数转换后再进行计算操作

一元加:+ 不会对变量有影响 

一元减:- 会去取对应的变量的反数

一元加减在对非数字类型的值操作的时候,先通过Number() 函数转换之后在进行操作,对于复杂类型数据 Object ,会通过valueOf() 和 toString()方法之后再进行操作

3,一元位操作符

对内存中二进制数进行操作

4,逻辑与:&& 

当两个操作对象都为 true 的时候 才返回 true 

用逻辑与不一定会返回布尔值结果

如果前一个操作对象是一个对象 var obj={} 的话,那么直接返回第二个操作对象

如果后一个操作对象是一个对象 var obj={} 的话,那么如果前一个操作对象 通过 Boolean() 函数转换之后返回了false 的话 就直接返回前一个操作对象

如果前一个操作对象通过 Boolean() 转换之后返回的是 true 的话 ,就会返回后面的操作对象obj

var obj={}; 通过 Boolean() 函数返回的是true 所以如果前后两个操作对象都是 Object 类型的话 直接返回第二个对象

如果有一个操作对象是 null 直接返回 null 不管是在什么位置的 null

如果有一个操作对象是 NaN 直接返回NaN

如果有一个操作对象是 undefined 直接返回 undefined

5,逻辑或:||

只有当两个操作对象都是 false 的时候,才会返回false  ,其它情况都返回 true

同样,不一定返回布尔值结果

如果第一个操作对象是 Object {} 的话,直接返回这个对象

如果有一个操作对象是 undefined 或者 NaN 的话,返回原值,可以用这个方法来设置默认值

6,短路逻辑

逻辑与 逻辑或 都是短路逻辑 

当第一个操作对象为 true 的时候 逻辑与 不再执行

当第一个操作对象是 false 的时候 逻辑或 不再执行

7,逻辑非:!

返回布尔值

如果对非布尔值使用,先通过 Boolean() 函数转换之后再操作

8,乘法:* 

数字运算结果要在范围内,否则返回 Infinity 或者 -Infinity

和 NaN 相乘返回 NaN 

非数字类型的值 通过 Number() 转换之后再运算

Infinity 和 0 相乘返回 NaN

9,除法:/

Infinity/Infinity 返回 NaN 

其它操作和乘法类似,先通过 Number() 函数转换之后再运算

0/0 也是 NaN

Infinity/正数 是 Infinity

Infinity/负数 是 -Infinity

10,模运算:%

就是取余数 处理方法和除法类似

11,加法:+

数字相加

字符串相加相当于把 两个字符串拼接

字符串和一个变量相加 会把变量执行String() 方法后在相加

12,减法:-

会通过Number() 后操作

13,关系操作符:> ,<, >=, <=

返回布尔值

数字的话,比大小

字符串的话,逐个字符比较asc码

如果是对象比较的话,先调用对象的valueOf()方法再比较,如果没有valueOf() 方法的话,就调用toString() 方法,之后再比较

布尔值的话,Number() 转成数字再比较

14,相等与全等:== === != !===

全等比较值和类型

普通等是在类型转换之后再比较值

对象之后指向同一个对象的时候才会相等

15,唯一的三元操作符:?:;

对? 左侧表达式进行操作,true的话返回 :左边的值 ,false 的话 返回 :右边的值

16,赋值操作符:+= -= *= /= %=

17,位操作符的赋值操作:<<=  >>=  >>>=

18,逗号操作符:,

用于在一行语句中执行多个操作

还可以用来赋值,返回最后一个操作的值





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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值