JavaScript -- 操作符和逻辑运算
算数操作符
+ : 加
- : 减
* : 乘
/ : 除
%:取余
递增和递减
1、递增
++a与a++都是对a进行递增的操作
区别
++a先返回递增之后的a的值
a++先返回a的原值,再返回递增之后的值
2、递减同理
赋值操作符
简单赋值:=
复合赋值:+=、-=、*=、/=、%=
复合运算可以简化我们的操作,比如var a = 5; 要给a加上5,正常情况我们会这样写 a = a + 5;,如果使用复合赋值,则简写为:a += 5;其他的几个复合赋值同理
比较操作符
>、<、>=、<=、==、===、!=、!==
==:相等,只比较值是否相等
===:相等,比较值的同时比较数据类型是否相等
!=:不相等,比较值是否不相等
!==:不相等,比较值的同时比较数据类型是否不相等
返回值:boolean型
三元操作符
语法:
条件 ? 执行代码1:执行代码2
说明:
可代替简单的if语句,
如果条件成立,执行代码1,否则执行代码2
var id = 76;
var res = id > 60?"合格":"不合格";
res
结果:
合格
把id的值改为55在试一下
var id = 55;
var res = id > 60?"合格":"不合格";
res
结果:
不合格
逻辑操作符
逻辑操作符:
&&:与
||:或
!:非
逻辑与
&& 与 (只要有一个条件不成立,返回false)
说明:在有一个操作数不是布尔值的情况,逻辑与操作就不一定返回值,
此时它遵循下列规则:
1、如果第一个操作数隐式类型转换后为true,则返回第二个操作数
2、如果第一个操作数隐式类型转换后为false,则返回第一个操作数
3、如果有一个操作数是null,则返回null
4、如果有一个操作数是NaN,则返回NaN
5、如果有一个操作数是undefined,则返回undefined
var num1 = 31;
var num2 = 40;
var num3 = 66;
console.log(num1 < num2 && num2 < num3)
console.log(num1 < num2 && num2 > num3)
console.log(88 && 55)
console.log('hello' && 55 && "abc")
结果:
true
false
55
abc
逻辑或
|| 或 (只要有一个条件成立,返回true)
说明:在有一个操作数不是布尔值的情况,逻辑与操作就不一定返回值,此时它遵循下列规则:
1、如果第一个操作数隐式类型转换后为true,则返回第一个操作数
2、如果第一个操作数隐式类型转换后为false,则返回第二个操作数
3、如果两个操作数是null,则返回null
4、如果两个操作数是NaN,则返回NaN
5、如果两个操作数是undefined,则返回undefined
console.log(55 > 88 || 33 <);
console.log(55 != '55' || 88 === '88');
console.log('hello' || 0 );
console.log( 99 || 0 || 'abc');
结果:
true
false
hello
99
逻辑非
! 非
说明:
1、无论操作数是什么数据类型,逻辑非都会返回一个布尔值
2、 ! ! 同时使用两个逻辑非操作符时:
第一个逻辑非操作会基于无论什么操作数返回一个布尔值,
第二个逻辑非则对该布尔值求反。
console.log(!false);
console.log(!88);
console.log(!0);
结果:
true
false
true
JavaScript -- 操作符和逻辑运算的更多相关文章
- javascript——操作符(~、&、|、^、<<、>>)
直接上代码吧! <script type="text/javascript"> //javascript操作符 //1.按位非~ var num1=25;// var ...
- javascript 操作符类型隐性转换
javascript 操作符类型隐性转换 (一).一元操作符只能操作一个值的操作符叫做一元操作符1.递增和递减操作符a. 在应用于一个包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作 ...
- JavaScript操作符(一元操作符)
JavaScript操作符包括算术操作符.位操作符.关系操作符和相等操作符.只能操作一个值的操作符叫做一元操作符. 递增和递减操作符 递增和递减操作符有两个版本:前置型和后置型.前置型操作符位于要操作 ...
- JavaScript操作符汇总
操作符 JavaScript 有赋值.比较.算术.位.逻辑.字符串和特殊运算符.本章描述了操作符,以及关于操作符优先级的一些信息. 表 2.1 JavaScript 所有操作符简明列表. 表 2.1 ...
- JavaScript操作符-3---算数,逻辑,赋值,比较,三元
JavaScript操作符 学习目标 1.掌握什么是表达式 2.掌握javascript操作符的分类 3.掌握算数操作符 什么是表达式 将类型的数据(如常量.变量.函数等),用运算符号按一定的规则链接 ...
- JavaScript操作符(=?,)优先级
JavaScript操作符优先级: 关于最后3个运算符的优先级比较,下面通过一个实例来具体说明: var a,b,c; a = 3,4,5; b = a--,--a,a; c = a ? b++ : ...
- JavaScript 操作符 变量
一.操作符: 一元操作符 递增操作符 递减操作符 分为 前置型(--a ++a) 和 后置型 (a-- a++) 区别如下: var a = 3,b=6; c = --a +b; //c= ...
- JavaScript操作符(布尔操作符、乘性操作符和加性操作符)
布尔操作符 布尔操作符用来测试两个值的关系,布尔操作符有三个,逻辑非(!).逻辑与(&&),逻辑或(||). 逻辑非由一个叹号(!)组成,可以应用于JavaScript任何值.逻辑非首 ...
- Javascript - 操作符
操作符(Operator) void 如果void后是数字,就返回NAN,否则返回Undefined. alert(void "hello");//跟的字符 print undef ...
随机推荐
- TensorFlow中tf.ConfigProto()配置Sesion运算方式
博主个人网站:https://chenzhen.online tf.configProto用于在创建Session的时候配置Session的运算方式,即使用GPU运算或CPU运算: 1. tf.Con ...
- 《深入理解Java虚拟机》笔记01 -- 运行时数据区
运行时数据区示意图 1. 程序计数器 占用一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器.主要用来记录线程执行到哪条语句了,分支.循环.跳转.异常处理.线程恢复等功能都需要依赖这个 ...
- uva12186 Another Crisis
题目大意: 世界危机发生了,工人们请求加薪.一个老板和n个员工组成树状结构,每个员工都有自己的唯一上司,Boss的编号为0,员工1~n,工人们打算签署一个志愿书给老板,但无法跨级,当一个中级员工(非是 ...
- lca最近公共祖先(st表/倍增)
大体思路 1.求出每个元素在树中的深度 2.用st表预处理的方法处理出f[i][j],f[i][j]表示元素i上方第2^j行对应的祖先是谁 3.将较深的点向上挪,直到两结点的深度相同 4.深度相同后, ...
- Js 实现全屏
<input id="Button1" type="button" value="开始全屏" onclick="kaishi ...
- Codeforces 140B(模拟)
要点 题意读好久.大概这样理解:每个时间点按顺序收到序号1-n的卡片,只有收过的卡片才能发给别人并且主人公会发在他心中优先级最高的.由于主人公可以在任何时间给朋友发卡片,最后输出(说得很绕但等价于)1 ...
- 详解window.history
http://blog.csdn.net/woxueliuyun/article/details/51075272
- shell 发送Post请求,并获取状态码
#!/bin/bash aa=$ result=$(curl -H "Content-type: application/json" -X POST -o /dev/null -s ...
- Unity Log重新定向
Unity Log重新定向 使用Unity的Log的时候有时候需要封装一下Debug.Log(message),可以屏蔽Log或者把log内容写到文本中.通过把文本内容传送到服务器中,查找bug出现的 ...
- 仙人掌(cactus)
题目描述LYK 在冲刺清华集训(THUSC)!于是它开始研究仙人掌,它想来和你一起分享它最近研究的结果.如果在一个无向连通图中任意一条边至多属于一个简单环(简单环的定义为每个点至多经过一次),且不存 ...