您好,欢迎来到软文情感网。
搜索
您的当前位置:首页js数据类型检测的4种方法

js数据类型检测的4种方法

来源:软文情感网


1.typeof

缺点:对null和Array等类型的检测不是很方便

Js代码

typeof null; //"object"

typeof []; //"object"

2.instanceof

缺点:1.只适用于对象类型

2.只要当前的这个类在实例的原型链上,检测出来的结果都是true

Js代码

123 instanceof Number; //false

null instanceof null; //TypeError

null instanceof Object; //false

function A(){}

function B(){}

A.prototype=new B();

var aObj=new A();

aObj instanceof B;//true

aObj instanceof A;//true

3.constructor

注意:在类继承时会出错

Js代码

function A(){};

function B(){};

A.prototype = new B();

var aObj = new A();

aObj.constructor === B; //true;

aObj.constructor === A; //false;

4.自定义方法实现(比较通用)

Js代码

function getType(o){

return Object.prototype.toString.call(o).slice(8,-1);

}

测试:

Js代码

getType(null); //"Null"

getType(undefined); //"Undefined"

getType([]); //"Array"

getType({}); //"Object"

getType(()=>{}); //"Function"

getType(document.createElement('div')); //"HTMLDivElement"

Copyright © 2019- ruangwengfa.com 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务