算数操作符

+ : 加

- : 减

* : 乘

/ : 除

%:取余

递增和递减

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 -- 操作符和逻辑运算的更多相关文章

  1. javascript——操作符(~、&、|、^、<<、>>)

    直接上代码吧! <script type="text/javascript"> //javascript操作符 //1.按位非~ var num1=25;// var ...

  2. javascript 操作符类型隐性转换

    javascript 操作符类型隐性转换 (一).一元操作符只能操作一个值的操作符叫做一元操作符1.递增和递减操作符a. 在应用于一个包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作 ...

  3. JavaScript操作符(一元操作符)

    JavaScript操作符包括算术操作符.位操作符.关系操作符和相等操作符.只能操作一个值的操作符叫做一元操作符. 递增和递减操作符 递增和递减操作符有两个版本:前置型和后置型.前置型操作符位于要操作 ...

  4. JavaScript操作符汇总

    操作符 JavaScript 有赋值.比较.算术.位.逻辑.字符串和特殊运算符.本章描述了操作符,以及关于操作符优先级的一些信息. 表 2.1 JavaScript 所有操作符简明列表. 表 2.1 ...

  5. JavaScript操作符-3---算数,逻辑,赋值,比较,三元

    JavaScript操作符 学习目标 1.掌握什么是表达式 2.掌握javascript操作符的分类 3.掌握算数操作符 什么是表达式 将类型的数据(如常量.变量.函数等),用运算符号按一定的规则链接 ...

  6. JavaScript操作符(=?,)优先级

    JavaScript操作符优先级: 关于最后3个运算符的优先级比较,下面通过一个实例来具体说明: var a,b,c; a = 3,4,5; b = a--,--a,a; c = a ? b++ : ...

  7. JavaScript 操作符 变量

    一.操作符: 一元操作符 递增操作符 递减操作符 分为 前置型(--a    ++a) 和 后置型 (a--    a++) 区别如下: var a = 3,b=6; c = --a +b; //c= ...

  8. JavaScript操作符(布尔操作符、乘性操作符和加性操作符)

    布尔操作符 布尔操作符用来测试两个值的关系,布尔操作符有三个,逻辑非(!).逻辑与(&&),逻辑或(||). 逻辑非由一个叹号(!)组成,可以应用于JavaScript任何值.逻辑非首 ...

  9. Javascript - 操作符

    操作符(Operator) void 如果void后是数字,就返回NAN,否则返回Undefined. alert(void "hello");//跟的字符 print undef ...

随机推荐

  1. GoWeb开发_Iris框架讲解(一)

    Golang介绍 Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软 ...

  2. 51nod1282(最小表示法&&枚举)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1282 题意:中文题目诶- 思路:指针不可转,刻盘可转,显然,对 ...

  3. spring发布和接收定制的事件(spring事件传播)[转]

    有事件,即有事件监听器. 有人问你spring监听器有哪些你看了下文即也知道了.   事件传播 ApplicationContext基于Observer模式(java.util包中有对应实现),提供了 ...

  4. poj 2049(二分+spfa判负环)

    poj 2049(二分+spfa判负环) 给你一堆字符串,若字符串x的后两个字符和y的前两个字符相连,那么x可向y连边.问字符串环的平均最小值是多少.1 ≤ n ≤ 100000,有多组数据. 首先根 ...

  5. Vue实现任务列表效果

    <!DOCTYPE html>            <html lang="en">            <head>            ...

  6. CC10:访问单个节点的删除

    题目 实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点. 给定待删除的节点,请执行删除操作,若该节点为尾节点,返回false,否则返回true 解法 这道题并不难,主要是题目中这句话确定 ...

  7. JavaScript引擎基本原理: 优化prototypes

    原文链接: JavaScript engine fundamentals: optimizing prototypes 这篇文章介绍了一些JavaScript引擎常用的优化关键点, 并不只是Bened ...

  8. python大战机器学习——人工神经网络

    人工神经网络是有一系列简单的单元相互紧密联系构成的,每个单元有一定数量的实数输入和唯一的实数输出.神经网络的一个重要的用途就是接受和处理传感器产生的复杂的输入并进行自适应性的学习,是一种模式匹配算法, ...

  9. 078 Subsets 子集

    给定一组不同的整数 nums,返回所有可能的子集(幂集).注意事项:该解决方案集不能包含重复的子集.例如,如果 nums = [1,2,3],结果为以下答案:[  [3],  [1],  [2],  ...

  10. SQL生成日期维度(到小时)

    #建表语句: CREATE TABLE [dbo].[Dim_日期3]( ) NOT NULL, [年] [int] NULL, ) NULL, ) NULL, ) NULL, ) NULL, ) N ...