最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

JS判斷數(shù)組詳細介紹

來源:懂視網(wǎng) 責編:小OO 時間:2020-11-27 20:04:46
文檔

JS判斷數(shù)組詳細介紹

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ù)組的方法。
推薦度:
導讀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ù)組的方法。

如何判斷數(shù)組?有的小伙伴們應該知道,但是有的卻說不上來js如何判斷數(shù)組。下面小編就針對這個問題給大家收集整理了份資料,感興趣的朋友一起看看吧,希望大家能掌握JS判斷數(shù)組的知識。

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

這個方法是判斷某個構造函數(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() 方法靠譜

聲明:本網(wǎng)頁內容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JS判斷數(shù)組詳細介紹

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ù)組的方法。
推薦度:
標簽: 判斷 介紹 js
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top