JavaScript中的6种运算符总结


Posted in Javascript onOctober 16, 2014

JavaScript 运算符主要包括:

  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符
  4. 三元运算符
  5. 逻辑运算符
  6. 字符串连接运算符

算术运算符

运算符 说明 例子 运算结果
+ y = 2+1 y = 3
- y = 2-1 y = 1
* y = 2*3 y = 6
/ 除,返回结果为浮点类型 y = 6/3 y = 2
% 求余,返回结果为浮点类型 要求两个操作数均为整数 y = 6%4 y = 2
++ 递加,分为前加和后加 对布尔值和 NULL 将无效 y = 2 ++y(前加) y++(后加) y = 3
-- 递减,分为前递减和后递减 对布尔值和 NULL 将无效 y = 2 --y(前减) y--(后减) y = 1

对于前加和后加,执行后的结果都是变量加1,其区别在于执行时返回结果不一样,参考下面两个例子:

var x = 2;

alert(++x); //输出:3

alert(x); //输出:3
var y = 2;

alert(y++); //输出:2

alert(y); //输出:3

递减同理。

赋值运算符

赋值运算符 = 用于赋值运算,赋值运算符的作用在于把右边的值赋值给左边变量。设定 y = 6,参见下表:

运算符 例子 等价于 运算结果
= y = 6 y = 6
+= y += 1 y = y+1 y = 7
-= y -= 1 y = y-1 y = 5
*= y *= 2 y = y*2 y = 12
/= y /= 2 y = y/2 y = 3
%= y %= 4 y = y%4 y = 2

赋值运算嵌套使用

赋值运算符可以嵌套使用:

y = (x = 2) + 5;    //结果: x=2,y=7

比较运算符

运算符 说明 例子 运算结果
== 等于 2 == 3 FALSE
=== 恒等于(值和类型都要做比较) 2 === 2 2 === "2" TRUE FALSE
!= 不等于,也可写作 2 == 3 TRUE
> 大于 2 > 3 FALSE
小于 2 TRUE
>= 大于等于 2 >= 3 FALSE
小于等于 2 TRUE

比较运算符也可用于字符串比较。

三元运算符

三元可以视作是特殊的比较运算符:

(expr1) ? (expr2) : (expr3)

语法解释:在 expr1 求值为 TRUE 时整个表达式的值为 expr2,否则为 expr3。

例子:

x = 2;

y = (x == 2) ? x : 1;

alert(y); //输出:2

该例子判断 x 的值是否等于 2,如果 x 等于 2,那么 y 的值就等于 x(也就是等于2),反之 y 就等于 1。

提示

为了避免错误,将三元运算符各表达式用括号括起来是个不错的主意。

逻辑运算符

运算符 说明 例子 运算结果
&& 逻辑与(and) x = 2; y = 6; x && y > 5 FALSE
|| 逻辑或(or) x = 2; y = 6; x && y > 5 TRUE
! 逻辑非,取逻辑的反面 x = 2; y = 6; !(x > y) TRUE

字符串连接运算符

连接运算符 + 主要用于连接两个字符串或字符串变量。因此,在对字符串或字符串变量使用该运算符时,并不是对它们做加法计算。

例子:

x = "beijing";

y = x + "你好!"; //结果:y = "beijing你好!"
// 要想在两个字符串之间增加空格,需要把空格插入一个字符串之中:

y = x + " 你好!"; //结果:y = "beijing 你好!"

当对字符串和数字做连接(加法)运算时,会将数字先转换成字符串再连接(相加):

x = 25;

y = "我今年" + x + "岁"; //结果:y = "我今年25岁"
Javascript 相关文章推荐
return false,对阻止事件默认动作的一些测试代码
Nov 17 Javascript
原生js 秒表实现代码
Jul 24 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
Jun 30 Javascript
jQuery实现鼠标划过添加和删除class的方法
Jun 26 Javascript
IE下JS保存图片的简单实例
Jul 15 Javascript
Angular2 (RC5) 路由与导航详解
Sep 21 Javascript
vue数据双向绑定的注意点
Jun 23 Javascript
js+html5实现页面可刷新的倒计时效果
Jul 15 Javascript
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
Jan 09 Javascript
用element的upload组件实现多图片上传和压缩的示例代码
Feb 12 Javascript
layui 解决富文本框form表单提交为空的问题
Oct 26 Javascript
react中的DOM操作实现
Jun 30 Javascript
JavaScript中使用document.write向页面输出内容实例
Oct 16 #Javascript
在HTML代码中使用JavaScript代码的例子
Oct 16 #Javascript
JavaScript代码应该放在HTML代码哪个位置比较好?
Oct 16 #Javascript
JavaScript基础教程之alert弹出提示框实例
Oct 16 #Javascript
编程语言JavaScript简介
Oct 16 #Javascript
js父页面与子页面不同时显示的方法
Oct 16 #Javascript
Javascript Memoizer浅析
Oct 16 #Javascript
You might like
模仿OSO的论坛(二)
2006/10/09 PHP
php+xml编程之xpath的应用实例
2015/01/24 PHP
那些年,我还在学习jquery 学习笔记
2012/03/05 Javascript
fckeditor粘贴Word时弹出窗口取消的方法
2014/10/30 Javascript
jquery实现从数组移除指定的值
2015/06/24 Javascript
详解AngularJS中的http拦截
2016/02/09 Javascript
解决wx.onMenuShareTimeline出现的问题
2016/08/16 Javascript
AngularJS 视图详解及示例代码
2016/08/17 Javascript
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
vue中npm包全局安装和局部安装过程
2019/09/03 Javascript
layui的布局和表格的渲染以及动态生成表格的方法
2019/09/18 Javascript
Python实现的生成自我描述脚本分享(很有意思的程序)
2014/07/18 Python
Python写的Tkinter程序屏幕居中方法
2015/03/10 Python
深入源码解析Python中的对象与类型
2015/12/11 Python
python实现黑客字幕雨效果
2018/06/21 Python
python3.5基于TCP实现文件传输
2020/03/20 Python
用python爬取历史天气数据的方法示例
2019/12/30 Python
python算的上脚本语言吗
2020/06/22 Python
Python实现异步IO的示例
2020/11/05 Python
python如何编写类似nmap的扫描工具
2020/11/06 Python
Willer台湾:日本高速巴士/夜行巴士预约
2017/07/09 全球购物
在网上学习全世界最好的课程:Coursera
2017/11/07 全球购物
澳大利亚拥有最佳跳伞降落点和最好服务的跳伞项目运营商:Skydive Australia
2018/03/05 全球购物
Glamest意大利:女性在线奢侈品零售店
2019/04/28 全球购物
Java的类与C++的类有什么不同
2014/01/18 面试题
函授本科自我鉴定
2013/11/03 职场文书
《草虫的村落》教学反思
2014/02/16 职场文书
银行金融服务方案
2014/06/11 职场文书
2014年管理人员工作总结
2014/12/01 职场文书
辞职信范文大全
2015/03/02 职场文书
工作自我推荐信范文
2015/03/25 职场文书
初中教师德育工作总结2015
2015/05/12 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书
导游词之日本富士山
2020/01/06 职场文书
java.util.NoSuchElementException原因及两种解决方法
2022/06/28 Java/Android