JavaScript数据类型以及转换
一、数据类型
分类
基本(值)类型:
- String
- Number
- Boolean
- undefined
- unll
对象(引用)类型:
- Object:任意对象
- Array:一种特别的对象
- Function:一种特别的对象
计算机世界中的万事成物都是数据。
计算机程序可以处理大量的数据,为了方便数据的管理,将数据分成了不同的类型:
注:通过 typeof 关键字检测数据类型 返回数据类型的字符串表达
<script> // 检测 1 是什么类型数据,结果为 number document.write(typeof 1); </script>
1.1 数值类型
即我们数学中学习到的数字,可以是整数、小数、正数、负数
JavaScript 中的数值类型与数学中的数字是一样的,分为正数、负数、小数等。
1.2 字符串类型
通过单引号( ''
) 、双引号( ""
)或反引号包裹的数据都叫字符串,单引号和双引号没有本质上的区别,推荐使用单引号。
注意事项:
-
无论单引号或是双引号必须成对使用
-
单引号/双引号可以互相嵌套,但是不以自已嵌套自已
-
必要时可以使用转义符
\
,输出单引号或双引号
1.3 布尔类型
表示肯定或否定时在计算机中对应的是布尔类型数据,它有两个固定的值 true
和 false
,表示肯定的数据用 true
,表示否定的数据用 false
。
1.4 undefined
未定义是比较特殊的类型,只有一个值 undefined,只声明变量,不赋值的情况下,变量的默认值为 undefined,一般很少【直接】为某个变量赋值为 undefined。
注:JavaScript 中变量的值决定了变量的数据类型。
1.5 NaN (不是一个数字)有时
isNaN() 方法:是NaN返回true不是返回false
isNaN和Number.isNaN的区别:
isNaN会先将参数转为 Number类型 如果转不成则为NaN, 那么会返回true
Number.isNaN不会进行转换,所以只有当参数为 NaN 时才返回true
1.6 无穷大 无穷小(Infinity)
//无穷大
var max = Infinity
//无穷小
var min = -Infinity
二、类型转换
理解弱类型语言的特征,掌握显式类型转换的方法
在 JavaScript 中数据被分成了不同的类型,如数值、字符串、布尔值、undefined,在实际编程的过程中,不同数据类型之间存在着转换的关系。
2.1 隐式转换
某些运算符被执行时,系统内部自动将数据类型进行转换,这种转换称为隐式转换。
2.2显式转换
2.2.1 转为number:有时
1.Number方法(直接转number类型)
2.使用parseInt方法(转整型):截取数字字符
3.使用parstFloat方法 (转小数):截取数字字符
4.boolean类转为number类型:false为0,true为1
5.undefined和null转为number:undefined为NaN,null为0
1.number转为布尔:非0和非NaN则为true
2.undefined和null转为boolean:值为false
3.Sting类型转为Boolean:非空字符串‘’即为ture
2.2.3 转为string类型
1.toString方法将number类型转为string类型
var str1 = number1.toString()
2.String()方法转为string类型
方法补充:
1.parseInt()、parseFloat()方法会先截取字符串中的数字字符(字符串必须以数字字符开头)再转为对应类型
2.Number()方法只能将数字字符组成的字符串转为数值类型
