javascript 运算符

 

javascript 运算符

目录

javascript 运算符

一、算术运算符

1、自增运算符

2、自减运算符

二、比较运算符

三、赋值运算符

四、逻辑运算符

五、条件运算符

疑难解答:


 

这一节,我们来介绍JavaScript的运算符。运算符是完成一系列操作的符号,例如两个数字型数据相加用“+”,相乘用“*”等。

JavaScript的运算符按运算符类型可以分为以下5种:

  • (1)算术运算符;
  • (2)比较运算符;
  • (3)赋值运算符;
  • (4)逻辑运算符;
  • (5)条件运算符;

接下来,我们一一对其进行介绍。

 

一、算术运算符

算术运算符用于在程序中进行加、减、乘、除等运算。

JavaScript中常用的算术运算符如下:

运算符描述示例
+4+6 //返回值10
-7-2 //返回值5
*2*3 //返回值6
/12/3 //返回值4
%求余7%4 //返回值3
++自增见下面
--自减见下面

初学者注意一下,在JavaScript中,除号不是“÷”,而是“/”,别傻乎乎地用错了。

1、自增运算符

“++”是自增运算符,它指的是在原来值的基础上加1,i++表示“i=i+1”。该运算符有2种情况:

(1)i++

“i++”指的是在使用i之后,使i的值加1。

举例:

i=1;
j=i++;

上面执行的结果:j的值为1,i的值为2。

其实上面代码等价于下面这一段代码:

i=1;
j=i;
i++;

(2)++i

“++i”指的是在使用i之前,先使i的值加1。

举例:

i=1;
j=++i;

上面的执行结果:j的值为2,i的值为2。

其实上面代码等价于下面这一段代码:

i=1;
i++;
j=i;

2、自减运算符

“--”是自减运算符,它指的是在原来值的基础上减1,i--表示“i=i-1”。该运算符同样有2种情况:

(1)i--

(2)--i

举例:

i=6;j=i--;//j的值为6,i的值为5
i=6;j=--i;//j的值为5,i的值为5

举例:JavaScript算术运算符

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title><script type="text/javascript">var n1=6,n2=7;var m1=n1+n2;var m2=n1*n2;var m3=n1++;var m4=--n2;document.write("m1="+m1+"<br/>");document.write("m2="+m2+"<br/>");document.write("m3="+m3+"<br/>");document.write("m4="+m4+"<br/>");</script>
</head>
<body>
</body>
</html>

在浏览器预览效果如下:

b6d7e594e90349368019aab03ca6db2c.png

二、比较运算符

比较运算符的基本操作过程是:首先对操作数进行比较,该操作数可以是数字也可以是字符串,然后返回一个布尔值true或false。

运算符描述示例
<小于1<4 //返回true
>大于2>5 //返回false
<=小于等于8<=8 //返回true
>=大于等于3>=5 //返回false
==是否等于5==6 //返回false
!=是否不等于5!=6 //返回true

在此说明一点,如果比较m和n两个变量是否相等,“m=n”这是错误的,因为“=”表示赋值运算符(我们接下来会讲到),应该写成“m==n”。

举例:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title><script type="text/javascript">var age=12;document.write("age>20:"+(age>20)+"<br/>");document.write("age<20:"+(age<20)+"<br/>");document.write("age!=20:"+(age!=20)+"<br/>");document.write("age<=20:"+(age<=20)+"<br/>");</script>
</head>
<body>
</body>
</html>

在浏览器预览效果如下:

07a445fccc8f41f5a6b2b720fe08c6aa.png

分析:“<br/>”表示换行,当然也可以使用转义字符“\n”来实现,只不过前一个是使用HTML标签实现,后面一个使用转义字符实现。

 

三、赋值运算符

JavaScript中的赋值运算可以分为2种:简单赋值运算和复合赋值运算。

简单赋值运算是将赋值运算符(=)右边表达式的值保存到左边的变量中。

复合赋值运算结合了其他操作(如算术运算操作)和赋值操作。

举例:

sum=sum+i;//简单赋值运算;
sum+=i;//复合赋值运算,等价于sum=sum+i;
运算符示例
=author="helicopter"
+=a+=b等价于a=a+b
-=a-=b等价于a=a-b
*=a*=b等价于a=a*b
/=a/=b等价于a=a/b
%=a%=b等价于a=a%b
&=a&=b等价于a=a&b(&是逻辑与运算)
|=a|=b等价于a=a|b(|是逻辑或运算)
^=a^=b等价于a=a^b(^是逻辑异或运算)

对于最后3个,平常不经常用,忽略掉算了。

 

四、逻辑运算符

逻辑运算符通常用于执行布尔运算,它们常常和比较运算符一起使用来表示复杂比较运算,这些运算涉及的变量通常不止一个,而且常用于if、while和for语句中。

运算符描述示例
&&逻辑与,若两边表达式的值都为true,则返回true;任意一个值为false,则返回false(8>5)&&(4<6),返回true;(8<5)&&(4<6),返回false
||逻辑或,只有表达式的值都为false,才返回false,其他情况返回true(8<5)||(4<6),返回true;(8<5)&&(4>6),返回false
!逻辑非,若表达式的值为true,则返回false;若表达式的值为false,则返回true!(9>2),返回false;!(9<2),返回true

举例:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title><script type="text/javascript">document.write((8 > 5) && (4 < 6)+"<br>");document.write((8 < 5) || (4 < 6)+"<br>");document.write(!(9 > 2));</script>
</head>
<body>
</body>
</html>

在浏览器预览效果如下:

a28631da8c9e43a9b3959f8431806962.png

总结:

(1)true的!为false,false的!为true;

(2)a&&b,a、b全为true时,表达式为true,否则表达式为false;

(3)a||b:a、b全为false时,表达式为false,否则表达式为true;

大家好好琢磨和理解一下,这是比较基础的东西喔。

 

五、条件运算符

条件运算符是JavaScript支持的一种特殊的运算符。

语法:

条件 ? 表达式1 : 表达式2;

说明:如果“条件”为true,则表达式的值使用“表达式1”的值;如果“条件”为false,则表达式的值使用“表达式2”的值。

例如:

(x>y)?4*3:5

分析:如果x的值大于y的值,则上面整个表达式最终的值为“12(由4*3得到)”;如果x的值小于或等于y的值,则上面整个表达式最终的值为“5”。

举例:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title><script type="text/javascript">var a=3;var b=5var c=(a<b)? "正确":"错误";document.write(c);</script>
</head>
<body>
</body>
</html>

在浏览器预览效果如下:

d58ee022d12140e7b11b9a671675c6cb.png

这一节还是比较简单的,大家好好看看就懂了。

 

疑难解答:

1、比较运算符“= =”与赋值运算符“=”的不同之处在于什么地方?

在各种运算符中,比较运算符“= =”与赋值运算符“=”是完全不同的。比较运算符“= =”用于比较两个操作数的值是否相等,并且返回true或false;而赋值运算符“=”用于给操作数赋值。

如果在需要比较两个表达式的值是否相等的情况下,错误的使用赋值运算符“=”,则会将右操作数的值赋给左操作数。

对于比较运算符“= =”与赋值运算符“=”,初学者很容易用混,大家得仔细区分一下。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/223237.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于HTML+CSS+JavaScript的登录注册界面设计

一、界面效果: 二、HTML代码: 登录注册html: 登录成功html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <h1>登录成功!</h1> </body> <…

线程基本方法

1。设置线程名 继承Thread类的线程&#xff0c;可以直接使用.setName()方法&#xff0c;设置线程名。也可以使用构造方法&#xff0c;需要注意java默认不继承构造方法&#xff0c;所以需要自己调用下父类的构造方法。 public class Demo {public static void main(String[…

powershell获取微软o365 21v日志

0x00 背景 o365 21v为o365的大陆版本&#xff0c;主要给国内用户使用。微软提供了powershell工具和接口获取云上日志。微软o365国内的代理目前是世纪互联。本文介绍如何用powershell和配置证书拉取云上日志。 0x01 实践 第一步&#xff0c;ip权限开通&#xff1a; 由世纪互联…

CGAN原理讲解与源码

1.CGAN原理 生成器&#xff0c;输入的是c和z&#xff0c;z是随机噪声&#xff0c;c是条件&#xff0c;对应MNIST数据集&#xff0c;要求规定生成数字是几。 输出是生成的虚假图片。 判别器的输入是 1.生成器输出的虚假图片x; 2.对应图片的标签c 来自真实数据集&#xff0c;且…

什么是高性能计算岗位

最近有小伙伴咨询什么是高性能计算岗位。 1、什么是高性能计算 高性能计算&#xff0c;在很多招聘信息中也会被标注为 HPC&#xff0c;是 High Performance Computing 的缩写。 目前很多 AI 公司或者从事 AI 的部门招聘都有这个岗位需求&#xff0c;我从某聘上截取了几个有代…

Shopee买家号想要多开怎么解决?

拥有多个Shopee买家号有很多优势。多账号可以帮助卖家获得更多流量、还能帮助提供关键词排名、提高销量等。 但是要管理多个Shopee买家号并非易事。面对不同账号的登录、注销和切换&#xff0c;可能会花费大量的时间和精力。而且&#xff0c;Shopee平台对于使用同一IP地址同时登…

Android Termux SFTP如何实现远程文件传输

文章目录 1. 安装openSSH2. 安装cpolar3. 远程SFTP连接配置4. 远程SFTP访问4. 配置固定远程连接地址 SFTP&#xff08;SSH File Transfer Protocol&#xff09;是一种基于SSH&#xff08;Secure Shell&#xff09;安全协议的文件传输协议。与FTP协议相比&#xff0c;SFTP使用了…

微信api开发接口文档

简要描述&#xff1a; 搜索联系人 请求URL&#xff1a; http://域名地址/searchUser 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必选类型说明wI…

通俗易懂的spring Cloud;业务场景介绍 二、Spring Cloud核心组件:Eureka 、Feign、Ribbon、Hystrix、zuul

文章目录 通俗易懂的spring Cloud一、业务场景介绍二、Spring Cloud核心组件&#xff1a;Eureka三、Spring Cloud核心组件&#xff1a;Feign四、Spring Cloud核心组件&#xff1a;Ribbon五、Spring Cloud核心组件&#xff1a;Hystrix六、Spring Cloud核心组件&#xff1a;Zuul七…

redisserver一闪而过 redis闪退解决版本

1.进入Redis根目录 2.输入redis-server 或 redis-server.exe redis.windows.conf 启动redis命令&#xff0c;看是否成功。 执 一闪而过的问题 可能是因为已启动或者其他问题&#xff0c;需要重启 先输入redis-cli.exe再输入shutdown再输入redis-server.exe redis.windows.c…

智能优化算法应用:基于被囊群算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于被囊群算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于被囊群算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.被囊群算法4.实验参数设定5.算法结果6.参考文献7.…

交换技术-电路交换-报文交换-分组交换

交换技术是指主机之间、通信设备之间或主机与通信设备之间为交换信息所采用的数据格式和交换装置的方式。按交换技术可分为&#xff1a;电路交换、报文交换和分组交换。 电路交换 交换(switching)&#xff0c;就是按照某种方式动态地分配传输线路的资源。 电路交换是在源结点…