如何判断对象是否为函数?

JS中万物皆为对象,function也不例外,而对象都有自己的类属性。类属性是一个字符串,可以通过类属性看出对象的类型信息,例如[object class],我们可以利用类属性来判断对象是否为函数。

function isFun(obj) {
    retrun Object.prototype.toString.call(obj) === '[object Function]';
}

var a = '1';
var b = [];
var c = {};
var d = 1;
var e = function() {};

isFun(a);    ==> false
isFun(b);    ==> false
isFun(c);    ==> false
isFun(d);    ==> false
isFun(e);    ==> true

同理,我们也可以使用这个方法判断数组等

你可能感兴趣的:(JS)