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 相关文章推荐
JS简单实现文件上传实例代码(无需插件)
Nov 15 Javascript
快速解决jquery之get缓存问题的最简单方法介绍
Dec 19 Javascript
浅谈JavaScript数据类型
Mar 03 Javascript
kindeditor编辑器点中图片滚动条往上顶的bug
Jul 05 Javascript
JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
Aug 04 Javascript
JavaScript代码实现左右上下自动晃动自动移动
Apr 08 Javascript
select隐藏选中值对应的id,显示其它id的简单实现方法
Aug 25 Javascript
Node.js中路径处理模块path详解
Nov 14 Javascript
Bootstrap面板(Panels)的简单实现代码
Mar 17 Javascript
JavaScript体验异步更好的解决办法
Jan 08 Javascript
通过 JS 判断页面是否有滚动条的实现方法
Apr 05 Javascript
详解微信小程序之scroll-view的flex布局问题
Jan 16 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
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
2014/07/10 PHP
隐性调用php程序的方法
2015/06/13 PHP
百度地图API使用方法详解
2015/08/25 PHP
PHP实现连接设备、通讯和发送命令的方法
2015/10/13 PHP
PHP 二级子目录(后台目录)设置二级域名
2017/03/02 PHP
jquery 图片缩放拖动的简单实例
2014/01/08 Javascript
$.extend 的一个小问题
2015/06/18 Javascript
javascript日期格式化方法小结
2015/12/17 Javascript
关于数据与后端进行交流匹配(点亮星星)
2016/08/03 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
2017/01/05 Javascript
jquery平滑滚动到顶部插件使用详解
2017/05/08 jQuery
Bootstrap下拉菜单更改为悬停(hover)触发的方法
2017/05/24 Javascript
jquery 给动态生成的标签绑定事件的几种方法总结
2018/02/24 jQuery
关于vue v-for循环解决img标签的src动态绑定问题
2018/09/18 Javascript
js实现ATM机存取款功能
2020/10/27 Javascript
9102年webpack4搭建vue项目的方法步骤
2019/02/20 Javascript
详解一个小实例理解js原型和继承
2019/04/24 Javascript
详解React中共享组件逻辑的三种方式
2021/02/02 Javascript
Python中logging模块的用法实例
2014/09/29 Python
Python中文字符串截取问题
2015/06/15 Python
Python 修改列表中的元素方法
2018/06/26 Python
TensorFlow设置日志级别的几种方式小结
2020/02/04 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
2020/12/16 Python
HTML5 Canvas API中drawImage()方法的使用实例
2016/03/25 HTML / CSS
高三语文教学反思
2014/01/15 职场文书
党员服务承诺书
2014/05/28 职场文书
低碳环保口号
2014/06/12 职场文书
多媒体教室标语
2014/06/26 职场文书
忠诚教育心得体会
2014/09/03 职场文书
大学生军训自我鉴定范文
2014/09/18 职场文书
2014年计生协会工作总结
2014/11/21 职场文书
党风廉政建设调研报告
2015/01/01 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
主持人大赛开场白
2015/05/29 职场文书
《观察物体》教学反思
2016/02/17 职场文书