JS中的数据类型
一、背景介绍
数据类型
js中有六种数据类型,包括五种基本数据类型(Number,String,Boolean,Null,Undefined),和一种混合数据类型(Object)
二、知识剖析
Undefined
Undefined只有一个值,即undefined值。使用var声明了变量,但未给变量初始化值,那么这个变量的值就是undefined
Null
null类型被看做空对象指针,只有一个值,即null值, 如果定义的变量准备在之后保存一个对象,那需要将该变量保存为null值。
String
String用于表示零或多个16位Unicode字符组成的字符系列,字符串可以由双引号“”或单引号‘’表示,不过以双引号开头的字符串也必须以双引号结尾,单引号也是如此
js中的字符串是不可改变的,也就是说字符串一旦创建,他的值就不能改变,要改变首先要销毁原来的字符串,然后在用另一个包含新值得字符串填充该变量
Boolean
Boolean类型是js中使用最多的一种类型,该类型只有两个字面值true和false
Number
number类型,字面量格式可以是十进制整数、八进制(八进制第一位必须是0)、十六进制(前两位必须是0x),
浮点数值(就是包含一个小数点的数值,如果小数点后面没有跟任何数字,那么这个数值将作为整数值来保存)
如果数值太大可以使用e表示法,用e表示数值等于e前面的数值乘以10的指数次幂
var num=3.125e7 //等于31250000
含义就是3.125乘以10的7次方
NaN,非数字类型。涉及到的 任何关于NaN的操作,都会返回NaN
Object
js中对象是一组属性与方法的集合。这里就要说到引用类型了,引用类型是一种数据结构,用于将数据和功能组织在一起。引用类型有时候也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法。
object类型细分的话有:Object 类型、Array 类型、Date 类型、RegExp 类型、Function 类型 等。
三大引用类型
1.Object类型
创建Object实例的方式有两种。
第一种是使用new操作符后跟Object构造函数
第二种方式是使用对象字面量表示法
2.Array类型
数组的每一项可以用来保存任何类型的数据,也就是说,可以用数组的第一个位置来保存字符串,第二个位置保存数值,第三个位置保存对象…另外,数组的大小是可以动态调整的。
3.Function类型
每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法。函数通常是使用函数声明语法定义的
三、常见问题
undefined和null的区别
四、解决方案
js诞生的时候只设置了null作为“无”的值。最初的设计是null是表示一个“无”的对象,转为数值时为0; | undefined表示“无”的原始值,转为数值时为NaN;undefined就是为了正式的区分空对象指针与未经初始化的变量,变量设置为null就是空对象指针,没有设置就是未经初始化!
五、拓展思考
typeof 操作符
由于js中的变量是松散类型的,所以它提供了一种检测当前变量的数据类型的方法,也就是typeof
六、参考文献
阮一峰的JS教程(http://javascript.ruanyifeng.com)
七、更多讨论
1、undefined和null的区别
js诞生的时候只设置了null作为“无”的值。最初的设计是null是表示一个“无”的对象,转为数值时为0; | undefined表示“无”的原 始值,转为数值时为NaN;undefined就是为了正式的区分空对象指针与未经初始化的变量,变量设置为null就是空对象指 针,没有设置就是未经初始化!
2、什么是typeof
由于js中的变量是松散类型的,所以它提供了一种检测当前变量的数据类型的方法,也就是typeof 操作符
3、Number有什么表现方法
可以是十进制整数、
八进制(八进制第一位必须是0)
十六进制(前两位必须是0x)
浮点数值(就是包含一个小数点的数值,如果小数点后面没有跟任何数字,那么这个数值将作为整数值来保存)
如果数值太大可以使用e表示法,用e表示数值等于e前面的数值乘以10的指数次幂
var num=3.125e7 //等于31250000
含义就是3.125乘以10的7次方
NaN,非数字类型。涉及到的 任何关于NaN的操作,都会返回NaN
还没有评论,来说两句吧...