這篇文章主要為大家展示了“JS如何判斷數(shù)組”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“JS如何判斷數(shù)組”這篇文章吧。
為閻良等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及閻良網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站制作、網(wǎng)站建設(shè)、閻良網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!typeof運算符
typeof會返回這個類型的字符串
var a = '123' console.log(typeof(a)) //string var b = [] console.log(typeof(b)) //object var c = {} console.log(typeof(c)) //object var d = null console.log(typeof(d)) //object
上述看到 數(shù)組 對象 null 用typeof返回都是object 這種方法不能識別出是否為數(shù)組
原型contructor鏈方法
實例化有一個contructor屬性 這個屬性指向生成對象 數(shù)組的方法
var a = [] console.log(a.__proto__.constructor) //? Array() { [native code] } var b = {} console.log(b.__proto__.constructor) //? Object() { [native code] }
上述看到 數(shù)組是由Array函數(shù)實例化的 對象由Object函數(shù)實例化來得
感覺這種方法是可以了 但是 constructor這個屬性是可以被改寫的
var a = [] a.__proto__.constructor = Object console.log(a.__proto__.constructor) //? Object() { [native code] }
可以看到 這個是 變成了數(shù)組判斷成了對象 所以這個方法也不是最好的
instanceof
這個方法是判斷某個構(gòu)造函數(shù)的prototype屬性所指向的對象是否在另外一個要檢測對象的原型鏈上
var a = [] console.log(a instanceof Array) //a對象的原型鏈上能找到Array true console.log(a instanceof Object) //true 原型鏈上也能找到對象
上述這種也不是特別好 判斷不出是數(shù)組還是對象
通用的方法 toString
toString() 方法返回放映這個對象的字符串
var a= '123' console.log(a.toString()) //123 var b = [1,2,3] console.log(b.toSting()) //1,2,3 var c = {} console.log(c.toString)) //[object Object]
可以看到只有對象返回對象類型
返回[object type] type代表對象的類型
判斷對象用Object的toString的方法拿過來用
var a =[] Object.prototype.toString.call(a) //[object Array]
這個對象 toString方法是可以判斷出是否為數(shù)組
但是這里注意下有個情況就是對象原型上toString() 也是可以更改的
Array.isArray(XX)
個人感覺還是使用通用方法 toString() 方法靠譜
以上是“JS如何判斷數(shù)組”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。