null:表示空值,即此处值为空
object:对象,各种值组成的集合
原始类型(primitive type)的值,最基本的数据类型:number、string、boolean;合成类型(complex type)的值:object,因为一个对象往往是多个原始类型的值的合成,可看成一个存放各种值的容器。undefined和null可以看成两个特殊值。
1.1对象
对象是最复杂的数据类型,可以分成三个子类型。
object狭义的对象
array数组
function函数
狭义的对象和数组是两种不同的数据组合方式。函数是处理数据的方法,JavaScript将它当成一种数据类型,可以赋值给变量,为编程带来很大的灵活性,为JavaScript的函数式编程奠定基础。(高级函数,一个函数作为另外一个函数的参数传入,回调函数)
2.typeof运算符
JavaScript有三种方法可以确定一个值到底是什么类型
typeof运算符
instanceof运算符
Object.prototype.toString方法
typeof运算符可以返回一个值的数据类型:
数值、字符串、布尔值分别返回number、string、boolean
函数返回function
undefined返回undefined(利用这点可以用来检查一个未声明的变量而不报错)
对象返回object(空数组类型是object,数组本质上只是一种特殊的对象,而instanceof运算符可以区分数组和对象)
null返回object
null的类型是object,由于1995年JavaScript只设计了五种数据类型,未考虑null,将其当作object的一种特殊值。后来null独立出来,作为一种单独的数据类型,为了兼容以前的代码,typeof null返回object就没法改变了。
认真专注自信自律
11.1k
粉丝