数据类型的转换
string:字符串
-
1 .toString();例:console.log(变量名.toString());将其他类型转换成字符串除了(null和undefined不能转);
-
2 String(变量名);将其他数据类型转换成string(字符串);
-
区别:.toString不能转null和undefined。String什么数据类型都可以转。
number : 数字
-
1.Number();例:console.log(Number(变量名));判断其他数据类型是否是数字,是数字则是0或1,不是则NaN(非数字)字符串转换成数字;
-
2.parseInt();例:console.log(parseInt(变量名));转成整型从字符串的第0个一直往后转,直到遇到非数字的字符才停止,第0个是非数字就是NaN; (只取整数值,不取小数点)
-
3.parseFloat();例:console.log(parseFloat(变量名));转成浮点数(小数)一般用于带单位数字的转换。(取数字和小数点)
boolean : 布尔
- 1.Boolean();例:console.log(Boolean(变量名));
- 用Boolean为false的几种情况:0(数字) 、NaN (非数字)、 '' (空字符串)、undefined (赋值但未定义) 、null (空对象)、 false(假)。
特殊
- NaN 、Not a number (非数字)
不常用{
- Infinity (无穷)
- Number.MAX_SAFE_INTEGER (最大的整型)
- Number.MAX_VALVE (最大的数)
隐式
string+number ==>number 隐式转换成 string
string*number ==>string 隐式转换成 number
运算符与表达式
算数运算符: + - * / % ++ --
-
加 : 数字加法,字符串拼接;
-
减 / 乘 :数字减法/乘法,运算符两边有非数字;
-
-- / ++ : 只有一端有变量,可以写在变量名前后,写在变量名前面表示自增/自减 ,写在变量名后边表示取值后再自增/自减。
-
% : 模除(取余);例:10%3=1 ;运算之后不会改变原变量,需要重新覆盖。
赋值运算符 : = 、 += 、 -= 、 *= 、 /=
左边是变量,右边是数据/变量 没有结果
比较运算符 : > 、 < 、 >= 、 <= 、 !=(不等于) 、 == 、 ===
左右任意数据结果是boolean
== : 只比较值是否相等,不比较数据类型
=== : 比较值和数据类型都是否相等
symbol类型不管是 == 还是 === 都是false;
逻辑运算符 : && 、 || 、 !
- && : 只要有一个是false时, 结果就是false;有两个满足条件时才是true
- || : 只要有一个满足条件是true,结果就是true;有两个不满足时才是false
- ! : 布尔数据类型,把boolean类型取反;
左右两边是其他数据类型
数据1 && 数据2 :当数据1转为boolean是true时,取数据2
数据1 && 数据2 :当数据1转为boolean是false时,取数据1
三元运算符
boolean 类型数据,结果是boolean类型的表达式,其他数据类型(隐式转换) ?值1 :值2 。问号前结果是true时,取值1 否则取值2 console.log(true ? 'hello' : 'world');//hello