Kerberos认证原理 测试用例 wxRuby templates 后台管理网页模板 pmp视频 seo教程下载 nginx教程视频 etl数据 pr序列设置哪个好 abaqus是什么软件 android调试工具 完全去vm去虚拟化工具 mysql 选择数据库 pythonset python调用函数 python时间戳 java语言基础教程 java怎么使用 java获取现在时间 java获取数据类型 java读取文本 linux入门 js删除数组指定元素 python的用途 vnc客户端 java电子书 华为ff 视频后期处理软件 脚本网站 光头强换肤助手 魔兽天龙八部 android应用开发入门 屏幕录像机 lol无限视野 hedit g4560配什么显卡 汉仪旗黑字体下载 苹果电脑怎么收藏网页 画吧教程
当前位置: 首页 > 学习教程  > 编程语言

运算符和表达式

2020/8/31 14:30:18 文章标签:

运算符和表达式

1. 运算符和表达式的概念

1.1 运算符

运算符就是参与运算的符号,像+-*/ 等。

与运算符一起运算的变量、直接量称之为操作数

1.2 表达式

1) 表达式是变量或者直接量与运算符组成的式子,表达式会有一个计算结果,称之为表达式的值,也就是说表达式是有值的。

2) 最简单的表达式是"原始表达式", 如 直接量、 变量名、 关键字等。

3) 复杂表达式由简单表达式组成, 运算符何以将简单表达式组合成复杂表达式。

4) 注意带有副作用的表达式,这样的表达式除了有表达式的计算结果之外,还会对表达式中的变量产生影响。

2. 运算符的分类

2.1 按照操作数个数

  • 一元运算符
  • 二元运算符
  • 三元运算符

2.2 按照运算符功能

  • 算数运算符
  • 关系运算符
  • 逻辑运算符
  • 位运算符
  • 赋值运算符
  • 其他运算符

3 运算符详解(按照功能)

3.1 算术运算符

运算符 运算符含义 操作数个数 组成的表达式的值的类型 组成的表达式有无副作用
+ 加法运算符 2 number
- 加法运算符 2 number
* 乘法运算符 2 number
/ 除法运算符 2 number
% 取余(取模)运算符 2 number
+ 正号运算符 1 number
- 负号运算符 1 number
++ 递增运算符 1 number
-- 递减运算符 1 Number

3.2 关系运算符

运算符 运算符含义 操作数个数 组成的表达式的值的类型 组成的表达式有无副作用
== 相等运算符 2 boolean
!= 不等运算符 2 boolean
=== 全等运算符 2 boolean
!== 不全等运算符 2 boolean
< 小于运算符 2 boolean
> 大于运算符 2 boolean
<= 小于或等于运算符 2 boolean
>= 大于或等于运算符 2 boolean
in 判断一个值是否属于某个数组或者一个属性是否属于一个对象 2 boolean
instanceof 判断一个对象的实例是否属于某个对象 2 boolean

两个数据在使用关系运算符进行判等的时候,会发生自动类型转换,规则如下:

1)判等的时候(==):

  • 先看两边是不是同种数据类型,如果是直接看是不是一样;如果不是那么两边都转数字
  • 当遇到 null 的时候,会有特殊情况发生。
    • 特殊情况:空串和null不相等
    • 特殊情况:false和null不相等
    • 特殊情况:0和null不相等
    • 特殊情况:undefined 和 null 相等;

2)判断全等(===):(不会出现类型转换)

  • 在判断全等的时候,必须类型和值都相同。
  • 如果有一个不一样,就不全等;

3.3 逻辑运算符

运算符 运算符含义 操作数个数 组成的表达式的值的类型 组成的表达式有无副作用
&& 逻辑与运算符 2 会把其中一个操作数的值作为整个表达式的值
|| 逻辑或运算符 2 会把其中一个操作数的值作为整个表达式的值
! 逻辑非运算符 1 boolean

3.4 位运算符

运算符 运算符含义 操作数个数 组成的表达式的值的类型 组成的表达式有无副作用
& 按位与运算符 2 interger
| 按位或运算符 2 interger
^ 按位异或运算符 2 interger
~ 按位非运算符 1 interger
<< 按位左移运算符 1 interger
>> 按位右移运算符 1 interger
>>> 按位无符号右移运算符 1 interger

3.5 赋值运算符

运算符 运算符含义 操作数个数 组成的表达式的值的类型 组成的表达式有无副作用
= 赋值运算符 2 取决于右边的操作数
+= 赋值求和运算符 2 number
-= 赋值求差运算符 2 number
*= 赋值求积运算符 2 number
/= 赋值商运算符 2 number
%= 赋值求余运算 2 number
&= 赋值按位与运算符 2 interger
|= 赋值按位或运算符 2 interger
^= 赋值按位异或运算符 2 interger
<<= 赋值左位移运算符 2 interger
>>= 赋值右位移运算符 2 interger
>>>= 赋值无符号右位移运算符 2 interger
+= 赋值字符串连接运算符 2 string

3.6 其他运算符

运算符 运算符含义 操作数个数 组成的表达式的值的类型 组成的表达式有无副作用
?: 条件运算符(JavaScript 中唯一的三元运算符) 3 取决于中间和后面的操作数
typeof 判断操作数类型 1 string
+ 字符串连接符 2 string
delete 删除对象属性或者数组元素 1 boolean
, 逗号运算符 2 取决于第二个操作数的值

4 运算符优先级

运算符优先级

 

注意:

给表达式中的一部分添加(),可以提高此处的优先级。


本文链接: http://www.dtmao.cc/news_show_150219.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?