JS数据类型、JS数据类型转换、JS运算
JS数据类型:
基本数据类型:(数字类型(Number)、字符串类型(String)、布尔类型(Boolean)、Undefined、null)
复杂数据类型:对象(Object)
-
Number
-
1. 十进制 var num1 = -100.25;
-
2. 十六进制 var nums1 = 0xA;
-
3. 八进制 var numz1 = 010;
-
4. 浮点数var mum4 = -6e4;
-
5. 最大值 Number.MAX_VALUE
-
6. 最小值 Number.MIN_VALUE
-
7. 无穷大 Infinity
-
8. 无穷小 -Infinity
-
9. NaN :非数值,但是也是Number数据类型 ,NaN与任何数据都不相等,包括它本身
-
10. isNaN()方法:判断一个数是否为非数字,是数字,返回false,不是数字的话返回true;
-
11. 语言具有隐式转换(隐式类型转换就是指,数据的类型在不用人工干预的情况下进行转换的行为,原因:js是一门弱类型的语言,他在声明变量的时候不需要指定类型,对变量赋值也没有类型的检测,所以js是非常的灵活的,)
-
字符串类型
-
字符串可以使用单引号,也可以使用双引号,例如:'abc'、"abc"。
-
字符串的拼接 +
-
两边只要有一个是字符串,那么+就是字符串拼接功能
-
两边如果都是数字,那么就是算术功能。
-
布尔 Boolean
-
true
-
false
-
在计算机内存存储中 true 1 false 0
-
Undefined
-
var num; console.log(num);//undefined
-
声明之后没赋值
-
Null
-
空 需要手动设置
-
var nu1 = null;
数据类型转化
-
转为string类型
-
toString() number、boolean
-
String() undefined ,null
-
转换为Number类型
-
Number()转化规则
-
如果字符串中只包含数字时,将其转换为十进制数值,忽略前导0
-
如果字符串中包含有效浮点格式,如“1.1”,将其转换为对 应的浮点数字,忽略前导0
-
如果字符串中包含有效的十六进制格式,如“0xf”,将其转换为相同大小的十进制数值
-
如果字符串为空,将其转换为0
-
如果字符串中包含除上述格式之外的字符,则将其转换为NaN
-
parseInt()的转化规则
-
遇到第一个非数值字符就返回
-
parseFloat()
-
遇到第一个非数值字符(第二小数点)就返回
-
转为boolean类型
-
Boolean()
-
0 ' ' null undefined NaN会转换成false,其它都会转换成true。
js运算 : 算数运算、一元运算、逻辑运算、关系运算、赋值运算
-
算数运算
-
+ - * / %
-
一元运算
-
前置++ 先将自身的值自增1,再将自增后的值赋值给变量
-
后置++ 先将自身的值赋值给变量,然后再自增1
-
前置--后置--同理
-
逻辑运算符(布尔运算符)
-
&& 与 两个操作数同时为true,结果为true,否则都是false
-
|| 或 两个操作数有一个为true,结果为true,否则为false
-
! 非 取反
-
关系运算符(比较运算符)
-
< > >= <= == != === !==
-
= 赋值
-
== 比较的是值相等
-
=== 全等、恒等,不仅要比较值是否相等,还要比较数据类型是否相等
-
赋值运算符
-
= += -= *= /= %=
-
优先级从高到底
-
() 优先级最高
-
.点 运算符
-
一元运算符++ -- !
-
算数运算符 先 * / % 后 + -
-
关系运算符 > >= < <=
-
相等运算符 == != === !==
-
逻辑运算符 先 && 后 ||
-
赋值运算符 =