检测数据类型的三种方式及区别

Posted xsffliu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检测数据类型的三种方式及区别相关的知识,希望对你有一定的参考价值。

var a="i am string";
var b=[1,2,3];
var c=new String("abc");   //String类实例对象
//typeof:  null 对象 数组 都是返回Object类型
console.log(typeof a);   //string
console.log(typeof b);   //object
console.log(typeof c);   //object
//instanceof无法检测是字符串,因为a只是一个一string为字符类型的值,并不是String实例对象 c可以检测因为c是String类的实例对象
console.log(a instanceof String);  //false
console.log(c instanceof String);  //true
console.log(b instanceof Array);  //true
//返回相对应的构造函数
console.log(a.constructor==String); //true
console.log(b.constructor==Array); //true

1、typeof a

  返回a的数据类型。但是null 对象 数组 都是返回Object类型

2、a instanceof String 

  返回布尔值

3、a.constructor

  返回其相对于的构造函数

  a.constructor==String   返回true

以上是关于检测数据类型的三种方式及区别的主要内容,如果未能解决你的问题,请参考以下文章

React创建组件的三种方式及区别

创建函数的三种方式及区别

VC定义的三种类型DLL有啥区别

Spring实例化Bean的三种方式及Bean的类型

2.mysql binlog的三种格式及区别

判断python对象是否可调用的三种方式及其区别