所在的位置: js >> js市场 >> js的数据类型

js的数据类型

北京治疗白癜风需花多少钱 http://pf.39.net/bdfyy/bdflx/160308/4782762.html

1、

-js中数据类型分为两大类:基本数据类型和引用数据类型

-基本数据类型分为:number、string、boolean、null、undefined

-引用数据类型分为:对象类型、函数,对象类型又分为:Object对象、Array数组、RegExp正则、Date时间对象、Math数学对象

2、

-基本数据类型存储在栈内存中,引用数据类型存储在堆内存中;

-数据存储时,基本数据类型在变量中存的是值,引用数据类型在变量中存储的是空间地址;

-基本数据操作的是值,引用数据类型操作的是空间地址;

3、

-堆内存和栈内存是浏览器形成的两个虚拟内存;

-栈内存主要用来存储基本数据的值;供js代码执行;栈内存是一种简单存储,存储的数据都有范围上线,一旦超过上限,就会栈溢出;

-堆内存主要用来存储引用数据类型;

4、

-什么是Number(数值类型)?js只有一种数值类型,包含小数和整数;

-NaN也是数值类型,代表不是一个数字;

-isNaN():isNaN这个方法执行时,会先把要校验的值强制转换成number类型的;然后再进行判断;如果是一个有效数字,返回false,如果不是一个有效数字,返回false

-Number():将其他数据类型的值强制转换成number类型;要把其他数据类型转换成number时,首先会调用toString(),转换成字符串

-ParseInt():用于从一个字符串中提取数字的方法,对字符串从左到右识别,直到遇到一个非有效数字停止,返回匹配的数字,如果第一个字符是非有效数字,返回NaN

-ParseFloat():和parseInt用法一样,区别是ParseFloat多识别一位小数点

-toFixed():保留小数位数的一个方法,返回的是一个字符串

5、

-什么是String(字符串类型)?在js中用引号包含的文本内容称之为字符串,可以是单引号也可以是双引号,(注意引号是成对出现的)

-索引:在字符串中,每个字符都有一个与之对应的索引,这个索引是一个数字,从字符串最左侧开始,第一个字符的索引为0,依次递增;可以通过索引找到字符串中的某个字符,(例:str[0]);

-length:字符串有一个length属性,属性值代表的是当前字符串中字符的个数;

-+:拼接符,用来拼接字符串;

6、

-什么是Boolean(布尔类型)?布尔类型常用在条件判断中,他只有两个值true和false;

-Boolean():把其他类型的值转换成布尔类型,返回值只可能是true或false;

-在js中只有0、空字符串、null、undefined、NaN这五个值转成布尔值时是false,其余都是true

-!:取反,该符号首先会把后面的值转换成布尔值,然后取反;连用两次取反,会隐式的将其他数据类型转换成布尔型;(例:!!”aa”===true)

7、

-Null类型的值只有一个,就是null;

-Undefined类型的值也只有一个,就是undefined;

-null和undefined都表示没有;null表示现在没有以后可能有,用来占位;undefined表示现在没有定义,现在没有以后也没有;

-null表示空对象指针;

-null的几种情况:

(1)通过id获取元素如果获取不到,返回的值默认为null

(2)可以给变量赋值为null,来清空变量,可以用来释放堆内存;

(3)正则捕获捕获不到内容时,返回值为null

-undefined的集中情况:

(1)如果变量只声明为定义,默认存储的值为undefined;

(2)获取对象的某个属性是,如果属性不存在,获取的值是undefined;

(3)如果函数的形参没有对应的实参,那么形参默认存储的值是undefined;

(4)如果函数没有return返回值,那么默认的返回值是undefined;

8、

-什么是Object(对象)?对象是由键值对组成,每组键值对由逗号隔开,键值对由键(属性名)和值(属性值)组成;键和值之间用冒号隔开,前面是键后面是值;(例:{a:1})

-对象的定义:

(1)首先会开辟一块堆内存空间

(2)把对象的键值对存储都该空间中

(3)把该空间的地址赋值给变量

(4)变量中实际存储的时一个十六进制的空间地址,这个地址是浏览器分配的

-对象没有length属性;

-获取对象下的某个属性的值:(对象名.属性名)(对象名[属性名])

-新增键值对:(对象名.新属性名=属性值)(对象名[新属性名]=属性值)

-修改键值对:(对象名.属性名=属性值)(对象名[“属性名”]=属性值)

-删除键值对:(delete对象名.属性名)(delete对象名[“属性名”])

9、

-什么是Array(数组)?数组由数组成员项组成,成员项之间由逗号隔开;(例:[1,“a”])

-length:数组由length属性,属性值代表数组成员项的个数;

-索引:索引从0开始,依次递增,与数组的成员项一一对应;

-数组的定义:

(1)首先在堆内存中开辟一块空间

(2)将数组的成员项通过,索引值一一存储

(3)把空间地址赋值给变量,

(4)变量中存储的是一个十六进制的空间地址




转载请注明:http://www.aierlanlan.com/rzdk/2213.html