javascript类型判断方法

Posted 我叫王自信

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript类型判断方法相关的知识,希望对你有一定的参考价值。

判断javascript中的类型,共有四种常用的方法

var a=6;

var b="str";

var c=true;

var arr=[];

typeof 用于基本类型的判断

1.typeof最好用于基本类型的判断,返回类型名(小写)。

例外 typeof null==="object" //true

typeof function(){}==="function" //true

2.typeof返回的是字符串

3.对变量执行typeof操作

得到的不是变量类型,而是变量值的类型,因为JS区别别的语言,变量没有类型,值才有。

instanceof 已知对象类型,进而判断

console.log(arr.constructor===Array);//true

constructor 

console.log(arr.constructor===Array);//true

注意:

constructor在类继承时会出错,instanceof方法不会出现该问题,对象直接继承和间接继承的都会报true

var A=function(){};

var B=function(){};

A.prototype=new B();

var obj=new A();

console.log(obj.constructor===B);//true

console.log(obj.constructor===A)//false

console.log(obj instanceof B)//true

console.log(obj instanceof A)//true

解决方法:obj.constructor = A;手动

 

prototype 最通用方法

Object.prototype.toString.call()

console.log(Object.prototype.toString.call(a))//[object,Number]

以上是关于javascript类型判断方法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 判断数据类型的方法

JavaScript 判断数据类型的方法

JavaScript类型判断详解(Object.prototype.toString.call()方法进行数据类型的可靠判断)

JavaScript中判断变量类型最简洁的实现方法(#################################)

javascript数据类型及数据类型判断的四种方法

java中用啥方法判断数据类型,就行 javascript中的 typeOf一样