当前位置:
首页 > 网站开发 > JavaScript >
-
JavaScript教程之表达式与运算符
表达式与运算符(相关javascript教程)
表达式 与数学中的定义相似,表达式是指具有一定的值的、用运算符把常数和变量连接起来的代数式。一个表达式可以只包含一个常数或一个变量。运算符可以是四则运算符、关系运算符、位运算符、逻辑运算符、复合运算符。下表将这些运算符从高优先级到低优先级排列:
注意 所有与四则运算有关的运算符都不能作用在字符串型变量上。字符串可以使用 +、+= 作为连接两个字符串之用。
提示 请密切注意运算的优先级。编程时如果不记得运算符的优先级,可以使用括号( )。例如:(a == 0)||(b == 0)。
一些用来赋值的表达式,由于有返回的值,可以加以利用。例如,用以下语句:a = b = c = 10,可以一次对三个变量赋值。
表达式 与数学中的定义相似,表达式是指具有一定的值的、用运算符把常数和变量连接起来的代数式。一个表达式可以只包含一个常数或一个变量。运算符可以是四则运算符、关系运算符、位运算符、逻辑运算符、复合运算符。下表将这些运算符从高优先级到低优先级排列:
括号 | (x) [x] | 中括号只用于指明数组的下标 |
求反、 自加、 自减 |
-x | 返回 x 的相反数 |
!x | 返回与 x (布尔值)相反的布尔值 | |
x++ | x 值加 1,但仍返回原来的 x 值 | |
x-- | x 值减 1,但仍返回原来的 x 值 | |
++x | x 值加 1,返回后来的 x 值 | |
--x | x 值减 1,返回后来的 x 值 | |
乘、除 | x*y | 返回 x 乘以 y 的值 |
x/y | 返回 x 除以 y 的值 | |
x%y | 返回 x 与 y 的模(x 除以y 的余数) | |
加、减 | x+y | 返回 x 加 y 的值 |
x-y | 返回 x 减 y 的值 | |
关系运算 |
x<y x<=y x>=y x>y |
当符合条件时返回 true 值,否则返回 false 值 |
等于、 不等于 |
x==y | 当 x 等于 y 时返回 true 值,否则返回 false 值 |
x!=y | 当 x 不等于 y 时返回 true 值,否则返回 false 值 | |
位与 | x&y | 当两个数位同时为 1 时,返回的数据的当前数位为 1,其他情况都为 0 |
位异或 | x^y | 两个数位中有且只有一个为 0 时,返回 0,否则返回 1 |
位或 | x|y | 两个数位中只要有一个为 1,则返回 1;当两个数位都为零时才返回零 |
位运算符通常会被当作逻辑运算符来使用。它的实际运算情况是:把两个操作数(即 x 和 y)化成二进制数,对每个数位执行以上所列工作,然后返回得到的新二进制数。由于“真”值在电脑内部(通常)是全部数位都是 1 的二进制数,而“假”值则是全部是 0 的二进制数,所以位运算符也可以充当逻辑运算符。 | ||
逻辑与 | x&&y | 当 x 和 y 同时为 true 时返回 true,否则返回 false |
逻辑或 | x||y | 当 x 和 y 任意一个为 true 时返回 true,当两者同时为 false 时返回 false |
逻辑与/或有时候被称为“快速与/或”。这是因为当第一操作数(x)已经可以决定结果,它们将不去理会 y 的值。例如,false && y,因为x == false,不管 y 的值是什么,结果始终是 false,于是本表达式立即返回 false,而不论 y 是多少,甚至 y 可以导致出错,程序也可以照样运行下去。 | ||
条件 | c?x:y | 当条件 c 为 true 时返回 x 的值(执行 x 语句),否则返回 y 的值(执行 y 语句) |
赋值、 复合运算 |
x=y | 把 y 的值赋给 x,返回所赋的值 |
x+=y x-=y x*=y x/=y x%=y |
x 与 y 相加/减/乘/除/求余,所得结果赋给 x,并返回 x 赋值后的值 |
提示 请密切注意运算的优先级。编程时如果不记得运算符的优先级,可以使用括号( )。例如:(a == 0)||(b == 0)。
一些用来赋值的表达式,由于有返回的值,可以加以利用。例如,用以下语句:a = b = c = 10,可以一次对三个变量赋值。
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式