JavaScript运算符小结


Posted in Javascript onJune 03, 2015

在JavaScript中,常见的运算符有算数运算符、比较运算符和逻辑运算符。

表1 JavaScript常见运算符

算数运算符 说明 举例 结果
= 赋值运算符。将运算符右边变量的值赋给左边变量。 x = 5 ; -
+ 加号。将两个数据相加。 y=1+2; y=3
- 减号。将两个数据相减。 z = x-y; z=2
* 乘号。将两个数据相乘。 a=x*y; a=15
/ 除号。将两个数据相除。 b=x/z; b=2.5
% 求余运算。求两个数据相除的余数。 c=x%z; c=1
++ 自加。将操作数加1。 m=++x; m=6   x=6
-- 自减。将操作数减1。 n=--x; n=5    x=5
比较运算符 说明 举例 结果
== 相等。若两数据相等,返回 true,否则返回 false。 boolean1=(x==5); boolean1=true
!= 不相等。若两数据不相等,返回 true,否则返回 false。 boolean2=(x!=5); boolean2=false;
> 大于。若左边数据大于右边数据,返回 true,否则返回 false。 boolean4=(x>y); boolean4=true
小于。若左边数据小于右边数据,则返回布尔值true,否则返回false。 boolean5=(x boolean5=false
>= 大于等于。若左边数据大于或等于右边数据,返回 true,否则返回 false。 boolean6=(x>=y); boolean6=true
小于等于。若左边数据小于或等于右边数据,返回 true,否则返回 false。 boolean7=(x boolean7=false
逻辑运算符 说明 举例 结果
&& 逻辑与。如果符号两边的操作数为真,返回true,否则返回false。 boolean_a=true&&false; boolean_a=false
|| 逻辑或。如果符号两边的操作数为假,返回false,否则返回true。 boolean_b=true||false; boolean_b=true
! 逻辑非。如果符号右边的操作数为真,返回false,否则返回true。 boolean_c=!true; boolean_c=false

" + "号也可以用来连接字符串

“+”号不但可以将两个数据相加,还可以用来连接字符串。

例如:

 var name=" Tom ";

 var age=22;

 var person="My name is "+name+" ! I'm  "+age+" ! ";

 alert(person);

保存并运行代码,显示 My name is Tom ! I'm 22 !

上面的例子中,有字符串,也有数值。当字符串和数值进行混合运算时,JavaScript 会自动判断“ + ”号的作用,是相加运算,还是连接字符串。如果是连接字符串,数值也将被转换为字符串。

对自加(++)和自减(--)的探讨

值得注意的是,自加(++)和自减(--)运算符放置在操作数的前面和后面含义不同。放在操作数前面(前自加 / 前自减),先对操作数进行加1(减1),再进行运算;放在操作数后面(后自加 / 后自减),先进行运算,再对操作数加1(减1)。

例如:

 <script type="text/javascript">

 var x=5;

 var y=++x;  // 前自加,赋值后 x 的值为 6

 var z=x++;  // 后自加,赋值后 x 的值为 7

 var m=--x  // 前自减,赋值后 x 的值为 6

 var n=x--  // 后自减,赋值后 x 的值为 5

 </script>

 <p onclick="alert(y);">显示 y 的值</p>

 <p onclick="alert(z);">显示 z 的值</p>

 <p onclick="alert(m);">显示m 的值</p>

 <p onclick="alert(n);">显示 n 的值</p>

保存并运行代码,依次点击四段文本,都显示 6 。

分析:

对于 y ,x (x=5)加 1 后的值变为 6 ,再将 x 的值传递给 y 。
对于 z ,先将 x 的值(x=6)传递给 z ,再对 x 加 1 ,值变为 7。
对于 m ,x (x=7)减 1 后的值为 6,再将 x 的值传递给 m 。
对于 n ,先将 x 的值(x=6)传递给 n ,再对 x 减 1,值变为 5 。

算数运算符的缩写

为了操作方便,减少代码的书写,JavaScript 还支持常见数学运算符的缩写。

表2常见算数运算符的缩写

运算符 例子 等价于
+= x+=y x=x+y
-= x-=y x=x-y
*= x*=y x=x*y
/= x/=y x=x/y
%= x%=y x=x%y

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
完美解决AJAX跨域问题
Nov 01 Javascript
js获取表格的行数和列数的方法
Oct 23 Javascript
prototype框架中美元符号$用法分析
Jan 22 Javascript
AngularJS中如何使用$parse或$eval在运行时对Scope变量赋值
Jan 25 Javascript
Javascript之面向对象--方法
Dec 02 Javascript
JS html时钟制作代码分享
Mar 03 Javascript
JavaScript实现的选择排序算法实例分析
Apr 14 Javascript
javascript trie前缀树的示例
Jan 29 Javascript
React Navigation 使用中遇到的问题小结
May 08 Javascript
vscode中Vue别名路径提示的实现
Jul 31 Javascript
react实现复选框全选和反选组件效果
Aug 25 Javascript
vue3.0封装轮播图组件的步骤
Mar 04 Vue.js
浅谈JavaScript字符串与数组
Jun 03 #Javascript
详谈javascript中的cookie
Jun 03 #Javascript
jquery滚动特效集锦
Jun 03 #Javascript
jQuery实现文本展开收缩特效
Jun 03 #Javascript
jQuery插件制作之参数用法实例分析
Jun 01 #Javascript
jQuery插件制作之全局函数用法实例
Jun 01 #Javascript
javascript实现设置、获取和删除Cookie的方法
Jun 01 #Javascript
You might like
PHP学习之字符串比较和查找
2011/04/17 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
2017/12/25 PHP
php session_decode函数用法讲解
2019/05/26 PHP
详解PHP 7.4 中数组延展操作符语法知识点
2019/07/19 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
Opacity.js
2007/01/22 Javascript
用CSS+JS实现的进度条效果效果
2007/06/05 Javascript
JavaScript中对象property的读取和写入方法介绍
2014/12/30 Javascript
JavaScript操作Cookie方法实例分析
2015/05/27 Javascript
js格式化时间的方法
2015/12/18 Javascript
jQuery操作dom实现弹出页面遮罩层(web端和移动端阻止遮罩层的滑动)
2016/08/25 Javascript
利用C/C++编写node.js原生模块的方法教程
2017/07/07 Javascript
利用Vue-draggable组件实现Vue项目中表格内容的拖拽排序
2019/06/07 Javascript
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
[01:38]DOTA2 2015国际邀请赛中国区预选赛 Showopen
2015/06/01 DOTA
[36:05]DOTA2亚洲邀请赛 3.31 小组赛 A组 Liquid vs Optic
2018/04/01 DOTA
10款最好的Web开发的 Python 框架
2015/03/18 Python
把MySQL表结构映射为Python中的对象的教程
2015/04/07 Python
关于Python中空格字符串处理的技巧总结
2017/08/10 Python
python字典DICT类型合并详解
2017/08/17 Python
python中文件变化监控示例(watchdog)
2017/10/16 Python
Python使用三种方法实现PCA算法
2017/12/12 Python
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
2018/03/19 Python
Python类装饰器实现方法详解
2018/12/21 Python
Mac安装python3的方法步骤
2019/08/09 Python
如何基于python实现脚本加密
2019/12/28 Python
Python用户自定义异常的实现
2020/12/25 Python
Python 无限级分类树状结构生成算法的实现
2021/01/21 Python
俄罗斯隐形眼镜和眼镜在线商店:Cronos
2020/06/02 全球购物
航海技术专业毕业生求职信
2014/04/06 职场文书
培训协议书范本
2014/04/22 职场文书
oracle覆盖导入dmp文件的2种方法
2021/05/21 Oracle
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL
Python爬虫框架之Scrapy中Spider的用法
2021/06/28 Python
警用民用对讲机找不同
2022/02/18 无线电
Web应用开发TypeScript使用详解
2022/05/25 Javascript