如何用js判斷一個(gè)對(duì)象是不是Array
-
調(diào)用數(shù)組的isArray方法:
Array.isArray(obj); -
判斷對(duì)象是否是Array的實(shí)例:
obj instanceof Array; -
內(nèi)部屬性:
Object.prototype.toString.call([]) ==='[object Array]';Object.prototype.toString方法會(huì)取得對(duì)象的一個(gè)內(nèi)部屬性[[Class]],然后依據(jù)這個(gè)屬性,返回一個(gè)類似于[object Array]的字符串作為結(jié)果,call用來改變toString的this指向?yàn)榇龣z測(cè)的對(duì)象。 判斷對(duì)象是否有
push等數(shù)組的一些方法。(這個(gè)方法有兼容問題,但也是一個(gè)簡(jiǎn)單易用的方法)obj.constructor===Array;// true
同理判斷一個(gè)對(duì)象是否是函數(shù):
Object.prototype.toString.call(obj)==='[object Function]' // true / false