码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-09-28 12:45:09      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:obj   new   struct   布尔   构造   布尔值   null   tor   ==   

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

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

标签:obj   new   struct   布尔   构造   布尔值   null   tor   ==   

原文地址:https://www.cnblogs.com/xsffliu/p/9717476.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!