js 03

运算符:操作符

主要诗羡赋值、算数运算等功能

typeof 也是运算符

非数值型的字符串就会是NaN

+ - * / %

' + ' 加法运算符

只要是跟字符串相加的都会转成字符串,(相互拼接)

数字跟NaN想加的都是 NaN ,字符串跟 NaN 想加就是拼接

script>

    console.log(1 + 1);//2

    console.log(1 + '1');//11

    console.log(1 + true);//2

    console.log('1' + true);//1true

    console.log(1 + 'true');//1true

    console.log(1 +  NaN);//NaN

    console.log('1' +  NaN);//1NaN

    script>

减法运算

减法运算符 会把字符串中的数字转化为数值型

非数值型的字符串就会是NaN

    console.log(1 - 1);//0

    console.log(1 - '1');//0

    console.log(1 - true);//0

    console.log('1' - true);//0

    console.log(1 - 'true');//NaN

    console.log(1 -  NaN);//NaN

    console.log('1' -  NaN);//NaN

乘法运算

乘法运算也会把字符串的数字转化为数值型

数值乘非数字型的字符串返回的是 NaN

   console.log(1 * 1);//1

    console.log(1 * '1');//1

    console.log(1 * true);//1

    console.log('1' * true);//1

    console.log(1 * 'true');//NaN

    console.log(1 *  NaN);//NaN

    console.log('1' *  NaN);//NaN

除法运算

取余运算

  console.log(5 % 3);//2

  console.log(7 % 6);//1

浮点数

浮点数 小数

浮点数精确度 浮点数最高精确度17位小数,

在算数运算中小数浮点数之间的运算精确度没有整数高

表达式

由数字、运算符、变量组成的式子1

 

递增运算符:反复给数字变量增加相同的值,例如增加1

前置递增 简写 ++变量名 先自加1在进行运算

++num 等价于

后置递增 变量名++ 先运算再自加

num++ 等价于 num=num +1

前置递增和后置递增单独写时效果一样

递减运算符

分为前置递减(--num) 后置递减(num--)

前置和后置都是立马给变量减1

前置递减(--num )是递减后的新值

后置递减(num--)是原来的值

  var num = 10

      console.log(num-- + --num);//18

比较运算符

两个值之前的比较所使用的运算符,会返回一个布尔值(true/false)

逻辑运算符:

就是用来进行布尔值运算额运算符,返回值也是布尔值,开发中常用

逻辑与 && 其实就是and 符

特点 两边必须都是true才会返回 true 否则返回 false

逻辑 或 ||

特点 两边只要有一个true 就会返回 true ,两边都是 false 才会返回 false

逻辑 非 ! not

特点: 也叫取反,用来取一个布尔值的相反值 例如 true 的相反值是 false

== 相等运算符

底层逻辑:把两个数据类型自动转换成同一种数据类型

 console.log(undefined==null);//true

其实undefined就是 null 衍生过来的

=== 必须值和数据类型一致的情况下才会返回 true 不会进行数据类型的转换

!= 不等于 两个值会自动转换成同一种值,

!== 完全不相等 不会进行数据类型的转换

一元运算符

一个值的运算

+ -

短路运算

当有多个表达式时左边的表达式的值可以确定结果时,就不在继续运算,右边的表达式的值

逻辑与 &&

语法:表达式1&&表达式2

特点;如果第一个表达式的值为真时,就返回第二个表达式

如果第一个表达式为假时,就会返回第一个表达式

数字里 0 代表假 除0以外都是真

逻辑或 ||

语法:表达式1 || 表达式2

特点:如果第一个表达式为真时就返回第一个表达式,

如果第一个表达式为假时,就会返回第二个表达式

赋值运算符

加法运算符

age +=1 等价于 age= age +1

减法运算符

age - = 1 等价于 age = age -1

除法运算符

age /=2 等价于 age = age / 2

乘法运算符

age *= 2 等价于 age = age*2

取余运算符

age %=2 等价于 age = age%2

运算符优先级

js和数学中一样,运算符也具有优先级

数学中的运算符 加减乘除

逻辑 && 和 || 层级一样,优先级一样,想要改变计算结果,需要加括号()

逻辑&& 的优先级更高一点 需要加括号

从左到右计算

三元表达式

三个表达式 语法:表达式1 ? 表达式2 : 表达式3

如果表达式1 为真 会返回表达式2

如果表达式1 为假 会返回表达式3

三元表达式的场景

列表里需要展示类似于已支付未支付等这些字眼时,后端返回的是 0 1 2等数字时,需要三元表达式判断然后转化为文字展示在页面上

input 框的内容,不是必须输入的input 框(也可以输入内容)传给后端值时,值为空,需要给一个默认值时,就需要用到三元表达式,如果用户 填了内容,那就传给后端用户填的内容,如果没填,就给一个默认值

if分支语句

{ }可以实现一段代码块

if语句做判断 语法 if(表达式) 只有表达式里为真的时候 才会进行下去

if 如果后面只有一段代码时,后面{ }可以不写,但不规范,如果没有{ },那它只对紧挨着它的代码有效果

if (条件) { }else { }

var num = 100; if (num <= 100 && num >= 80) { console.log('牛逼'); } else if (num < 80 && num >= 60) { console.log('还不错'); } else { console.log('不太行'); }

switch 语句

分支语句

特点:

switch (表达式) { case value: //表达式 匹配成功是执行的 case value2: //表达式 匹配成功是执行的 case value3: //表达式 匹配成功是执行的 break; default: break; }

如果没有break 时,匹配成功的表达式会执行,也会执行下面全部的表达式

break 就是终止执行,跳出 switch 语句

场景:在固定的数值使用判断,匹配相同的选项,进行执行,

default: 兜底 没有匹配的选项时执行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值