js变量类型判断 严格通用 Object.prototype.toString.call()

Posted 诗和远方-ysk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js变量类型判断 严格通用 Object.prototype.toString.call()相关的知识,希望对你有一定的参考价值。

Object.prototype.toString.call()判断结果:

Object.prototype.toString.call(true)
"[object Boolean]"
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(‘ndefined‘)
"[object String]"
Object.prototype.toString.call([])
"[object Array]"
Object.prototype.toString.call({})
"[object Object]"
Object.prototype.toString.call(alert)
"[object Function]"

typeof判断结果:

typeof undefined
"undefined"
typeof true
"boolean"
typeof 1
"number"
typeof ‘sds‘
"string"
typeof alert
"function"
typeof null
"object"
typeof []
"object"
typeof {}
"object"

特别的:(typeof)

var a = new String(‘123‘);
console.log(a);
console.log(Object.prototype.toString.call(a));
console.log(typeof a);

结果为:

String {"123"}
[object String]
object

以上是关于js变量类型判断 严格通用 Object.prototype.toString.call()的主要内容,如果未能解决你的问题,请参考以下文章

请问js怎么判断一个变量是对象还是数组呢?

js获取或判断任意数据类类型的通用方法(getDataType)和将NodeList转为数组(NodeListToArray)

Javascript如何判断一个变量是数字类型?

Js语法

javascript运算符

js如何判断变量的数据类型