JS 的基本数据类型

127 阅读3分钟

JS的数据类型(基本数据类型)

JS中变量可以存储 任意类型的值

1.Number 类型

数字类型:不区分整数浮点数

100 200 1.1 0 -6 -999 都是数字

2.String 类型

字符串类型:只要是引号包裹的内容,就是字符串类型(引号不区分单双引号)

3.undefined类型

undefined类型:它是一个数据,表明未定义

变量只定义,不赋值的时候,默认的值就是undefined

4.Boolean类型(后续更多的使用在判断上)

只有两个值 一个是true,一个是false

true:代表真,正确

false:代表假,错误的

5.Null类型

代表空,本身是一种数据类型,只不过代表的是空(啥也没有)

Null和undefined不同!!!

使用场景:在创建对象的时候,如果开始不知道对象内部有什么,可以给一个null

类似于在创建变量的时候,只定义,不赋值默认是一个undefined

JS的数据类型检测

通过一个方法去检测数据类型的值是什么

语法:typeof(要检测的数据类型的值)

typeof 的问题,不能正确检测出null这个类型的实际类型,检测null的时候打印结果为object

null代表的含义是空,也就是空对象,所以typeof会把他当成一个对象去输出

JS的数据类型转换

1.转换为数字类型

1)Number(数据)

可以用于任何数据类型,将其转换为数字类型

 *字符串转数字:如果转换的字符串是空字符串或者空白字符串,那么直接转换为数字0
 
 *其他类型的字符串(不是空字符串,不是空白字符串,不是纯数字字符串):会转换为NaN
 
 *NaN:表示的是一个number的数字,但是没有办法通过常规的数字表明它,所以只能使用NaN来代替(坏掉的数字)
 
 *布尔值转数字:true转换为1   false转换为0
 
 *+undefined转数字:会直接转换为NaN
 
 *null转数字:会直接转换为0
 

2)parseInt(数据)

*会将数据转换为number类型,并且值是正数(直接忽略掉小数点以后的值,并不是四舍五入)

*在转换的时候,如果数据是纯数字字符串或者是数字开头的字符串,那么会转换为数字,否则就是转为NaN

3)parseFloat(数据)

*转换结果与parseInt类似,但是在转换小数的时候会保留小数点后面的数字

4)拓展:在实际开发中,常用数据-0(暂时先不考虑原理)

2.转换为字符串类型

1)变量.toString()方法

注意:S是大写的

注意:undefined类型和null不能使用toString方法(因为JS没有给我们提供,或者说JS不允许)

2)String(变量)方法

注意:S也是大写

什么类型都可以转换为字符串类型,包括undefinednull类型

3)拓展:开发时常用的一个方法

 变量+'' (暂时不考虑原理)
 
 转换结果与String类似,写法上更简单一些,所以推荐使用    
 

3.转换为布尔类型

Boolean(变量)

将其他数据类型,转换为布尔值(也就是转换为true或者false

数字转换为布尔值,只有0会转换为false,其他的数字都会转换为true(非0即为真)

字符串转换为布尔值的时候,只有空字符串会转换为false,其他的字符串都会转换为true

undefined和null转换为布尔值的时候,都会转换为false(重点,以后会常用)