js判断变量类型的方法

js判断变量类型的方法

js判断变量类型的方法有好几个。

typeof

typeof操作符或者typeof()方法可以判断number, string, boolean这三个基本数据类型, 其他类型结果均为object。

instanceof

instanceof操作符判断前面的变量是否是后面的变量的实例。

instanceof可以判断除了以下几种类型:

  • undefined和null结果都是object
  • 三个基本数据类型无法判断,但是对应的包装类型可以判断

constructor

constructor指向构造函数。

constructor可以判断除了undefined和null之外的类型。

Object.prototype.toString.call()

利用 Object.prototype.toString() 判断数据类型

1
2
3
4
5
6
7
8
9
const getType = (data) => {
return Object.prototype.toString
.call(data)
.replace(/\[object (\w+)\]/, "$1")
.toLowerCase();
};

// 返回值是类型字符串
getType("asd"); // 'string'

评论