1.逻辑运算符
1.逻辑且(&&)
符号左边必须为 true 并且右边也是 true,才会返回 true
符号左边必须为 true 并且右边也是 true,才会返回 true
2.逻辑或(||)
符号左边为true 或者右边为true,都会返回true
只有两边都是false 的时候才会返回false
3.逻辑非(!)
本身是true的,会变成false
本身是false的,会变成true
2.数据类型转换
1.Number
转换的内容当做一个整体来处理
如果不能转成一个合法的数字 则转换成NaN
如果不能转成一个合法的数字 则转换成NaN
true 隐藏转化为 1 ,false 隐藏转化为 0
2.parseInt(转为整数)
不管转换什么 都是一位一位的对待 如 'abc'
如果第一位不能转成合法的数字 那么就立马输出 NaN 然后停止转换
如果第一位能转成合法的数字 那么保留第一位 然后继续看第二位 ,以此类推直到结束
true 输出为 NaN,false 输出为 NaN,不认小数点
3.parseFloat
同parseInt ,不管转换什么 都是一位一位的对待 如 'abc'
如果第一位不能转成合法的值 那么就立马输出 NaN 然后停止转换
如果第一位可以转换 那么保留第一位 继续下一位
识别小数点
4.isNaN
只要带is的工具 结果不出意外一定是布尔类型
如果是NaN 则返回true 否则返回false
NaN 跟任何数字运算 结果一定是NaN
NaN 不等于 NaN
3.数据转换类型:字符串
String () 任何类型都可以使用这个转成字符串
toString () 不能转 undefined null
4.数据转换类型:布尔
在 js 中,只有
''
、0
、null
、undefined
、NaN
,这些是false
其余都是 true
5.数学运算符
+
只有符号两边都是数字的时候才会进行加法运算 只要符号任意一边是字符串类型,就会进行字符串拼接
-
会执行减法运算 会自动把两边都转换成数字进行运算
*
会执行乘法运算 会自动把两边都转换成数字进行运算
/
会执行除法运算 会自动把两边都转换成数字进行运算
%
会执行取余运算 会自动把两边都转换成数字进行运算
会执行平方运算
6.赋值运算符
=
就是把 = 右边的赋值给等号左边的变量名
+=
a += 10 等价于 a = a + 10
-=
a -= 10 等价于 a = a - 10
+=
a *= 10 等价于 a = a * 10
/+
a /= 10 等价于 a = a / 10
%=
a %= 10 等价于 a = a % 10
7.比较运算符
==
比较符号两边的值是否相等,不管数据类型 >
1 == '1'
两个的值是一样的,所以得到
true
===
比较符号两边的值和数据类型是否都相等 >
1 === '1'
两个值虽然一样,但是因为数据类型不一样,所以得到
false
!=
比较符号两边的值是否不等 >
1 != '1'
因为两边的值是相等的,所以比较他们不等的时候得到
false
!==
比较符号两边的数据类型和值是否不等 >
1 !== '1'
因为两边的数据类型确实不一样,所以得到
true
>=
比较左边的值是否大于或等于右边的值 >
1 >= 1
结果是true
1 >= 0
结果是true
1 >= 2
结果是false
<=
比较左边的值是否小于或等于右边的值 >
1 <= 2
结果是true
1 <= 1
结果是true
1 <= 0
结果是false
>
比较左边的值是否大于右边的值 >
1 > 0
结果是true
1 > 1
结果是false
1 > 2
结果是false
<
比较左边的值是否小于右边的值 >
1 < 2
结果是true
1 < 1
结果是false
1 < 0
结果是false
8.自增自减运算符(一元运算符)
++
进行自增运算
分成两种,前置++ 和 后置++
前置++,会先把值自动 +1,在返回
var a = 10; console.log(++a); // 会返回 11,并且把 a 的值变成 11
后置++,会先把值返回,在自动+1
var a = 10; console.log(a++); // 会返回 10,然后把 a 的值变成 11
--
进行自减运算
分成两种,前置-- 和 后置--
和
++
运算符道理一样