JavaScript基础-3
3 运算符
按照个数分类可分为:一元运算符、二元运算符、三元运算符;
按照功能分类可分为:算数运算符、自增运算符、比较运算符、逻辑运算符、赋值运算符;
3.1 算数运算符
算术运算符包含了加减乘除,符号表示如下:
运算符 | 描述 | 示例 |
+ | 加 | 1 + 1 =2 |
- | 减 | 1 -1 = 0 |
* | 乘 | 1 * 1 =1 |
/ | 除 | 1 / 1 = 1 |
% | 取余 | 3 % 2 = 1 |
3.2 自增(自减)运算符
- 自增运算符
1 前置自增运算符
var num; num = num +1; // ++num 等价于 ++num
2 后置自增运算符
var num; num = num +1; // num++ 等价于 num++
区别:
前置自增是先自加1后返回值,后置自增是先返回值后加1;
自减和自增类似。
3.3 比较运算符
比较运算符是两个数据进行比较时所用的运算符,会返回布尔值;
运算符 | 描述 | 示例 | 返回值 |
< | 小于号 | 1<2 | true |
> | 大于号 | 2>1 | true |
>= | 大于等于 | 2>=2 | true |
<= | 小于等于 | 1<=2 | true |
== | 等号(值一样 隐式转换) | 2==2 | true |
!= | 不等号 | 1!=2 | true |
=== !== | 全等(值和数据类型一致) | '2'==='2' | true |
3.4 逻辑运算符
用来进行布尔运算,返回值也是布尔值;
运算符 | 描述 | 示例 |
&& | 与 | true && false |
|| | 或 | true || false |
! | 非 | ! true |
- 逻辑运算
当有多个表达式的时候,左边的表达式的值可以确定时,就停止运算右边的值;
逻辑与
语法:表达式1 && 表达式2
若表达式1为真,则返回表达式2;
若表达式1为假,则返回表达式1;
console.log(123 && 456); // 返回值 456
console.log(0 && 456); // 返回值 0
逻辑或
语法:表达式1 || 表达式2
若表达式1为真,则返回表达式1;
若表达式1为假,则返回表达式2;
console.log(123 || 456); // 返回值 123
console.log(0 || 456); // 返回值 456
3.5 赋值运算符
用来把数据赋值给变量的运算符;
运算符 | 描述 | 示例 |
= | 直接赋值 | var num1 = 1; |
+= -= | 加、减后再赋值 | var age1 = 1; age1 += 2; // 3 |
*= /= %= | 乘、除、取余后再赋值 | var str1 = 1; str1 *= 2; // 2 |
3.6 运算符优先级
- 小括号;
- 一元运算符;
- 算术运算符;
- 关系运算符;
- 相等运算符;
- 逻辑运算符;
- 赋值运算符;
- 逗号运算符;
JavaScript基础-3的更多相关文章
- JavaScript基础
JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...
- 一步步学习javascript基础篇(0):开篇索引
索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...
- 前端之JavaScript基础
前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...
- 一步步学习javascript基础篇(3):Object、Function等引用类型
我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...
- Javascript基础回顾 之(三) 面向对象
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(二) 作用域
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- Javascript基础回顾 之(一) 类型
本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...
- JavaScript 基础回顾——对象
JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...
- javascript基础01
javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...
- javascript基础02
javascript基础02 1.数据类型 数据类型的描述在上篇的扩展中有写到链接 由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要.这句话很重要. 如果以后再数据类型 ...
随机推荐
- unison+inotify的Web目录同步方案
1.在Linux下做WEB目录文件同步 一般有如下几种方式: ----------------------------------------------- 1) nfs实现web数据共享 ...
- Java的自定义注解使用实例
概念 Java有五个元注解,自动继承java.lang.annotation.Annotation. 什么是元注解,可以理解为其他普通注解进行解释说明 @Target 该注解的使用范围,限定应用场景 ...
- 处女作《Web全栈开发进阶之路》出版了!
书中源码下载地址:https://github.com/qinggee/WebAdvanced 01. 当初决定写博客的原因非常的纯洁:只要每个月写上 4 篇以上博客,月底的绩效奖金就多 500 块. ...
- php session序列化攻击面浅析
目录 0x00 首先,session_start()是什么? 0x01 初识php-session序列化机制 0x02 php_serialize引擎(反)序列化测试 0x03 当使用不同的引擎来处理 ...
- [区块链] 密码学——椭圆曲线密码算法(ECC)
今天在学椭圆曲线密码(Elliptic Curve Cryptography,ECC)算法,自己手里缺少介绍该算法的专业书籍,故在网上查了很多博文与书籍,但是大多数博客写的真的是...你懂的...真不 ...
- 『片段』ShellHelper 控制台程序 的 程序调用(支持输入命令得到返回字符串输出)
背景: > 之前做 OGG 时,被 OGG的配置 恶心到了.(OGG是啥,这里就不解释了) > 总之就是一个 控制台程序,总是得手动执行一堆命令,每次都得输入 —— 实在是打字打累了. & ...
- Spring Boot 2.x整合Redis
最近在学习Spring Boot 2.x整合Redis,在这里和大家分享一下,希望对大家有帮助. Redis是什么 Redis 是开源免费高性能的key-value数据库.有以下的优势(源于Redis ...
- windows防火墙实验-命令行设置远程桌面连接以及禁止浏览器上网
windows防火墙实验-设置远程桌面连接以及禁止浏览器上网 实验环境: 1.win2008远程桌面服务 2.win7-1 10.10.10.136 3.win7-2 10.10.10.153 实验步 ...
- pytest进阶之conftest.py
前言 前面几篇随笔基本上已经了解了pytest 命令使用,收集用例,finxture使用及作用范围,今天简单介绍一下conftest.py文件的作用和实际项目中如是使用此文件! 实例场景 首先们思考这 ...
- AI应用开发实战 - 手写识别应用入门
AI应用开发实战 - 手写识别应用入门 手写体识别的应用已经非常流行了,如输入法,图片中的文字识别等.但对于大多数开发人员来说,如何实现这样的一个应用,还是会感觉无从下手.本文从简单的MNIST训练出 ...