30天快速掌握js07之表达式和运算符知识点详解

此篇文章讲解目录:

算术运算符

自增与自减

关系运算符

对象运算符

逻辑运算符

算术运算符

算术运算符包括:+-*/%;

+(加号)

对数字进行代数求和

对字符串进行连接操作

将一个数值转换成字符串

-(减号)

对操作数进行”取反”操作

对数字进行减法操作

将字符串转换成数值

*和/(乘除)

对两个运算数进行乘法(除法)运算

%(求余/求模)

返回两个除数的余数

赋值操作符

=:赋值

+=:加赋值

-=:减赋值

*=:乘赋值

/=:除赋值

%=:取余赋值

自增与自减

功能

++ 对唯一的运算数进行递增操作(每次加1)

-- 对唯一的运算数进行递减操作(每次减1)

规则

运算数必须是一个变量,数组的一个元素或者对象的属性

如果运算数是非数值的则运算符将它转成数值;

转换规则是,调用用Number,根据转后的值,再次进行运算

++i和i++是完全两回事符号位置决定运算结果

++i运算数之前,先进行递增(递减)操作,再进行求值;

i++运算数之后,先求值,再进行递增(递减操作;)

关系运算符

运算符

如果A小于B,则返回true,否则返回值为false;

如果A小于等于B,则返回值为true,否则返回false

>=

如果A大于等于B,返回true,否则返回值为false

>

如果A大于B,则返回true,否则返回值为false

操作规则

数值与数值的比较,比较他们的代数值;

仅一个运算数是数值,将另一个运算数转换成数值,并比较他们的代数值;

字符串间的比较,逐字符比较他们的Unicode数值;

如果一个操作数是数值,则将另一个操作数转换为一个数值,然后执行数值比较;(只要有一个是数值,另外一个无论什么值,都会最终转为数值后再比较)

运算数既非数字也非字符串,返回值为fals e;

与NaN比较,返回值是false;

等值关系运算(==和===)

== 比较两个运算数的返回值看是否相等

!= 比较两个运算数的返回值看是否不想等;

=== 比较两个运算数的返回值以及数据类型是否相同;

!== 比较两个运算数的返回值以及数据类型是否不相同

比较原则

值类型间比较,只有数据类型相同,且数值相等时才能够相同;

值类型与引用类型比较,肯定不相同

引用类型间的比较,比较他们的引用值(内存地址)

对象运算符

In 判断左侧运算数是否为右侧运算数的成员;

Instancesof 判断对象实例是否属于某个类或构造函数

New 根据构造函数创建一个新的对象,并初始化该对象

Delete 删除指定对象的属性,数组元素或变量

.及[] 存取对象和数组元素

() 函数调用,改变运算运算符优先级等;

逻辑运算符

!逻辑非:取反

如果运算数的值为false则返回true,否则返回false;

连续使用两次,可将任意类型转为布尔类型值;

&&逻辑与

第一个操作数的对象,返回第二个操作数

第二个操作数是对象,如果想返回第二个对象,第一个必须为true;

如果两个操作数都是对象,第一个是true,则返回第二个操作数;

第一个操作数是null,返回null

第一个操作数是NaN,返回NaN

第一个操作数是undefined,返回undefined

||逻辑或

两个操作数都是false的时候才为false;第一个操作数是true,则返回第一个数;无需对第二个值判断了,已经可以确定为true;如果第一个值为false的时候,返回第二个数;因为第一个已经是false了,值取决于第二个值,所以返回第二个值;

第一个操作数是对象,返回第一个操作数

第一个操作数值为false,返回第二个操作数

两个操作数都是对象,返回第一个操作数

两个操作数都是null,返回null;

两个操作数都是NaN,返回NaN;

两个操作数都是undefined,返回undefined

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180504G1XNB700?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券