var num1=10,num2="c",num3="5"; console.log(num1*num2); console.log(num1*num3);//隐式类型转换
递增和递减
递增(递减同理)
++a与a++都是对a进行递增操作
区别
++a先返回递增之后的a的值
a++先返回a的原值,在返回递增之后的值
var num1=10,num2=5,num3=++num1+num2; //++num1 num1=num1+1 console.log(num1); console.log(num3);
var num1=10,num2=5,num3=num1++-num2; console.log(num1); console.log(num3);
var x1=20,x2=30,x3=--x1+x2--; console.log(x1); console.log(x2); console.log(x3);// 19+30=49;
赋值操作符
简单赋值:=;
复合赋值:+= -= *= %= /=
比较操作符
==:值是否相等
===:比较值是否相等同时比较类型是否相等
!=:不相等,比较值是否不相等
!==:不相等,比较值得同时比较数据类型是否不相等
返回值:boolean
三元操作符
语法
条件 ? 执行代码1:执行代码2
说明
可代替简单的if语句,如果条件成立,执行代码1,否则执行代码2
var soce=85; var result=(soce>=60)?"及格":"不及格" console.log(result);
逻辑操作符
- && 与(只要一个条件不成立,返回false)
- || 或 (只要一个条件成立,返回true)
- ! 非
逻辑与
说明
在有一个操作数不是布尔值得情况下,逻辑与操作就不一定返回值,它遵循规则
- 如果第一个操作隐式类型装换后为true,则返回第二个操作数
- 如果第一个操作数隐式类型转换后为false,则返回第一个操作数
- 有一个是null则返回null
- 有一个是NaN就返回NaN
- 有一个是undefind就返回undefind
逻辑或
- 如果第一个操作数隐式类型转换后为true,则返回第一个操作数
- 如果第一个操作数隐式类型转换后为false,则返回第二个操作数
- 如果两个操作数是null则返回null
- 如果两个操作数都是NaN、则返回NaN
- 如果两个操作数都是undefined,则返回undefined
逻辑非
说明
- 无论操作数是什么数据类型,逻辑非都会返回一个布尔值
- ! !同时使用两个逻辑非操作符使
- 第一个逻辑非操作基于无论什么操作数都返回一个布尔值
- 第二逻辑非则对该布尔值求反
原标题:JS知识整理随笔(2) 逻辑操作符和算数操作符以及其它操作符
关键词:JS