JS运算符

运算符(operator)也被称作操作符,是用于实现赋值,比较和执行算数运算等功能的符号.

JavaScript中常用的运算符有:

  • 算数运算符
  • 递增和递减运算符
  • 比较运算符
  • 逻辑运算符
  • 赋值运算符

算数运算符

概念: 算术运算使用的符合,用于执行两个变量或值的算术运算

运算符 描述 实例
+ 10+20=30
- 10-20=-10
* 10*20=200
/ 10/20=0.5
% 取余数(取模) 返回除法的余数9%2=1
console.log(1 + 1); //2
console.log((1 -1)); //0
console.log(1 * 1); //1
console.log(1 / 1); //1
// 1. %取余
console.log(4 % 2); //0
console.log(5 % 3); //2

浮点数的精度问题
浮点数值的最高精度为17位小数,但在进行算术计算时其精确度远远不如整数.

//2.浮点数 孙淑运算里面会有问题 
console.log(0.1 + 0.2); //0.30000000000000004
console.log(0.07*100); //7.000000000000001

所以:不要直接判断两个浮点数是否相等

//3. 我们不能直接拿着浮点数进行相比较 是否相等
var num= 0.1 + 0.2 ;
console.log(num == 0.3); //false

表达式和返回值

  • 表达式:是由数字、运算符、变量等以能求得数值的有意义拍了方法所得的组合
    简单解释: 是由数字、运算符、变量等组成的式子

  • 表达式最终都会有一个结果,返回给我们,我们称为返回值

递增和递减运算符

如果需要反复给数字变量添加或减去1,可以是由递增(++)和递减(--)运算符来完成

在JavaScript中,递增(++)和递减(--)既可以放在变量前面,也可以放在变量后面,放在变量后面是,我们可以称为前置递增(递减)运算符,放在变量后面时,我们可以称为后置递增(递减)运算符

递增和递减运算符必须和变量配和使用

前置递增(递减)运算符 ,先加1 ,后返回值

var age = 10;
++age ;
console.log(age); // 11

var p = 10;
console.log(++p + 10 );//21

后置递增(递减)运算符 ,先返回原值, 后自加1

var age = 10;
age++ ;
console.log(age); // 11

var p = 10;
console.log(p++ + 10 );//20
console.log(p); //11

递增递减练习

var e = 10;
var f = e++ + ++e; // e++ 10 e=11 ++e=12  e=12  10+12=22
console.log(e); //12
console.log(f); //22

比较运算符

概念 :比较运算符是两个数据进行比较是所使用的运算符,比较运算后,会返回一个布尔值(true/false)作为比较运算的结果

运算符名称 说明 案例 结果
< 小于号 1<2 true
> 大于号 1>2 false
>= 大于等于号(大于或者等于) 2>=2 true
<= 小于等于号(小于或者等于) 3<=2 false
== 判等号(会转型) 37==37 true
!= 不等号 37!=37 false
=== !== 全等 要求值和数据类型都一致 37='37' false

=小结

符号 作用 用法
= 赋值 把右边给左边
== 判断 判断两边值是否相等(注意此时有隐式转换)
=== 全等 判断两边的值和数据类型是否全相同

逻辑运算符

概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值.经常用多个条件的判断.

逻辑运算符 说明 案例
&& '逻辑与',简称'与' and true&&false
|| "逻辑或",简称'或' or true||false
! "逻辑非",简称'非' not !true

短路运算(逻辑中断)
短路运算原理: 当有多个表达式(值)时,左边的表达式可以确定结果时,就不在基线运算右边的表达式的值

逻辑与

  • 语法:表达式1 && 表达式2
  • 如果第一个表达式的值为真,则返回表达式2
  • 如果第一个表达式的值为假,则返回表达式1
console.log(123 && 456); //456
console.log(0 && 456); //0

逻辑或

  • 语法:表达式1 || 表达式2
  • 如果第一个表达式的值为真,则返回表达式1
  • 如果第一个表达式的值为假,则返回表达式2
console.log(123 || 456); //123
console.log(0 || 456); //456

赋值运算符

概念:用来把数据赋值给变量的运算符

赋值运算符 说明 案例
= 直接赋值 var usrName='a';
+= -= 加减一个数后再赋值 var age=10;age+=5 //15
*= /= %= 乘 除 取模后再赋值 var age=2; age*=5;//10

运算符优先级

优先级 运算符 顺序
1 小括号 ()
2 一元运算符 ++ -- !
3 算数运算符 先 * / % 后 + -
4 关系运算符 > >= < <=
5 相等运算符 == != === !==
6 逻辑运算符 先 && 后 |
7 赋值运算符 =
8 逗号运算符 ,
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容

  • 饥人谷学习进阶第 3 天 JavaScript中运算符主要用于连接简单表达式,组成一个复杂的表达式。常见的有算数表...
    饥人谷1904_陈俊锋阅读 416评论 0 0
  • 操作符 一元操作符 只能操作一个值的操作符叫做一元操作符。 有递增(++)和递减(--)操作符,有两个版本: 前置...
    YM雨蒙阅读 814评论 3 8
  • 赋值运算符 名字操作符含义赋值x=yx=y加法赋值x+=yx=x+y减法赋值x-=yx=x-y乘法赋值x*=yx=...
    仙姑本姑阅读 346评论 0 0
  • JavaScript中运算符主要用于连接简单表达式,组成一个复杂的表达式。常见的有算数表达式、比较表达式、逻辑表达...
    饥人谷_小侯阅读 446评论 0 0
  • 1对账 2找到本子 3整理笔记 4二维码 5记录 寻找高效、快速的工作方式
    晚安女子阅读 128评论 0 0