JavaScript数据类型

201 阅读2分钟

「这是我参与11月更文挑战的第9天,活动详情查看:2021最后一次更文挑战」 。

一:数据类型分类:

(1)简单数据类型(值类型)

(2)复杂数据类型(引用类型)

值类型与引用类型的区别:

值类型是存储在栈里的,拷贝赋值给的是数据,如果改拷贝的数据对元素没有影响

引用类型是存储在堆里的,拷贝赋值给的是堆地址,如果改拷贝的数据对原来的数据有影响

二:简单数据类型:

1.number型

(1)定义:所有数学中的一切数字

(2)正负无穷:infinity,-infinity

(3)特殊值:

NaN:表示不是一个数字

数值类型与NaN相运算,得出的结果是NaN

2.字符串型

(1)定义:一切以引号(单引号,双引号,反引号)包起来的内容。

反引号(一般用于拼接):``

${}在反引号中用于将 { } 里的内容和 ${ } 之外的内容拼接

3.布尔型

(1)定义:表示事物的对立面

(2)值:

true--->在运算的时候相当于1

false---->在运算的时候相当于0

4.undefined(未定义型)

定义:只声明,未赋值,值就是undefined

5.Null(空)

定义:声明并且赋值了,为了方便后面给值,所以给了空值。

三:复杂数据类型:

1.数组

2.函数

3.对象

由于复杂数据类型的内容太多,我们放在后面说复杂数据类型。到时候在详细的说复杂数据类型

四:检测数据类型:

语法:typeof 数据

例如:

console.log(typeof 'afgj');
console.log(typeof 123);

记住字符串要加引号

五。数据类型转换

1.隐式转换:js引擎编译的时候自动转换。(不推荐使用)

隐式转换,数值相加,字符相链,布尔转数字(true-->1,false-->0)

2.显示转换:

(1)转string: 方法一:+

1+‘1’--->11

true+'1'--->true1

方法二:string()(最常用)

可以转undefined 和null

方法三: toString()

不可以转undefined 和null

(2)转number型

方法一:number()

方法二:+

方法三:转整数parseInt()

方法四:转小数parseFloat()

(3)转布尔型

下面的8个都转false,除了这8个,都转true

0,-0,flase,null,undefined,NaN,空字符串'',document.all

!1--->--->!true--->false !0--->--->!false--->true