您的位置:首页 > Web前端 > JavaScript

js中的数据类型,以及如何检测数据类型

2019-08-28 00:55 1541 查看

基本数据类型:string,number,boolean,null,undefined,symbol

引用数据类型:object(array,function...)

常用的检测数据类型的方法一般有以下三种:

1.typeof 一般主要用来检测基本数据类型,因为它检测引用数据类型返回的都是object

还需要注意的一点是:typeof检测null返回的也是object(这是JS一直以来遗留的bug)

typeof 1
"number"
typeof 'abc'
"string"
typeof true
"boolean"
typeof null
"object"
typeof undefined
"undefined"
typeof {}
"object"
typeof []
"object"

2.instanceof  这个方法主要是用来准确地检测引用数据类型(不能用来检测基本数据类型)

function add(){}
add instanceof Function
//true

var obj = {}
obj instanceof Object
//true

[] instanceof Array
//true

3.Object.prototype.toString()  可以用来准确地检测所有数据类型

Object.prototype.toString.call([])
//"[object Array]"

Object.prototype.toString.call(1)
//"[object Number]"

Object.prototype.toString.call(null)
//"[object Null]"

Object.prototype.toString.call(undefined)
//"[object Undefined]"

Object.prototype.toString.call(true)
//"[object Boolean]"

Object.prototype.toString.call('111')
//"[object String]"

Object.prototype.toString.call({})
//"[object Object]"

Object.prototype.toString.call(function add(){})
//"[object Function]"

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: