好程式設計師分享javascript中陣列化的一般見解
好程式設計師
分享
javascript中陣列化的一般見解,陣列化瀏覽器中存在許多類陣列物件,往往對類陣列操作比較麻煩,沒有陣列那些非常方便的方法,在這種情況下,就有了陣列化方法。
陣列化的一般方法
1.第一種也是我們最常見的的方法,[].slice.call方法
function toArray(obj){
1. <p><font size="3"> return [].slice.call(obj);</font></p>
2. <p><font size="3"> //Array.prototype.slice.call();</font></p>
3.
<p><font size="3"> }</font></p>
Ps:這種方法,其實就是引用方法,註釋的部分為完全寫法,返回的就是一個陣列物件。
2.第二種方法借鑑的是jq中的makeArray方法
function makeArray(obj){
1. <p><font size="3"> var target = [];</font></p>
2. <p><font size="3"> if(obj != null){</font></p>
3. <p><font size="3"> var i = obj.length;</font></p>
4. <p><font size="3"> if(i = null || typeof obj === 'string' || typeof obj === 'function' ||
5. obj.setInterval){//</font></p>
如果是字串、函式win物件,就把這個元素付給建立陣列的第一個元素返回出去;
target[0] = obj;
1. <p><font size="3"> }else{//如果不是以上那些元素,透過迴圈把obj中每一個賦給target的每一個索引;</font></p>
2. <p><font size="3"> while(i){</font></p>
3. <p><font size="3"> target[--i] = obj[i];</font></p>
4. <p><font size="3"> }</font></p>
5. <p><font size="3"> }</font></p>
6. <p><font size="3"> }</font></p>
7. <p><font size="3"> return target;</font></p>
}
3.第三種方法
function $arr(ele) {
1. <p><font size="3"> if (!ele){</font></p>
2. <p><font size="3"> return [];</font></p>
3. <p><font size="3"> }</font></p>
4. <p><font size="3"> if (ele.toArray){</font></p>
5. <p><font size="3"> return ele.toArray();</font></p>
6. <p><font size="3"> }</font></p>
7. <p><font size="3"> var length = ele.length || 0, results = new Array(length);</font></p>
8. <p><font size="3"> while (length--){</font></p>
9. <p><font size="3"> results[length] = ele[length];</font></p>
10. <p><font size="3"> }</font></p>
11. <p><font size="3"> return results;</font></p>
12. <p><font size="3"> }</font></p>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913892/viewspace-2641966/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師分享JavaScript學習筆記ES5中常見的陣列方法程式設計師JavaScript筆記陣列
- 好程式設計師大資料分享Shell中陣列講解程式設計師大資料陣列
- 好程式設計師分享JavaScript中8個常見的陷阱程式設計師JavaScript
- 好程式設計師分享javascript中的常見的相容寫法程式設計師JavaScript
- 好程式設計師web前端分享javascript關聯陣列用法總結程式設計師Web前端JavaScript陣列
- 好程式設計師web前端培訓分享JavaScript學習筆陣列的排序程式設計師Web前端JavaScript陣列排序
- 好程式設計師web前端分享JavaScript中常見的反模式程式設計師Web前端JavaScript模式
- 好程式設計師分享JavaScript幾個最常見的錯誤程式設計師JavaScript
- 好程式設計師web前端培訓分享JavaScript學習筆記之陣列程式設計師Web前端JavaScript筆記陣列
- 好程式設計師web前端之JavaScript陣列去重方法程式設計師Web前端JavaScript陣列
- 好程式設計師web前端分享javascript列舉演算法程式設計師Web前端JavaScript演算法
- 好程式設計師分享ApacheSpark常見的三大誤解程式設計師ApacheSpark
- 好程式設計師分享JavaScript建立物件的方式!程式設計師JavaScript物件
- 好程式設計師Java教程分享JavaScript常見面試題一程式設計師JavaScript面試題
- 好程式設計師Java教程分享JavaScript常見面試題五程式設計師JavaScript面試題
- 好程式設計師Java教程分享JavaScript常見面試題四程式設計師JavaScript面試題
- 好程式設計師Java教程分享JavaScript常見面試題三程式設計師JavaScript面試題
- 好程式設計師Java教程分享JavaScript常見面試題二程式設計師JavaScript面試題
- 好程式設計師JavaScript教程分享JavaScript中變數和作用域程式設計師JavaScript變數
- 好程式設計師技術分享淺談JavaScript中的閉包程式設計師JavaScript
- 好程式設計師分享JavaScrip陣列去重操作例項小結程式設計師Java陣列
- 好程式設計師分享JavaScript六種繼承方式詳解程式設計師JavaScript繼承
- 好程式設計師大資料教程分享實用的大資料之陣列程式設計師大資料陣列
- 好程式設計師web前端分享用JavaScript實現的5個常見函式程式設計師Web前端JavaScript函式
- 好程式設計師分享JavaScript之-文件物件模型(DOM)程式設計師JavaScript物件模型
- 好程式設計師大資料學習路線分享Scala系列之陣列程式設計師大資料陣列
- 好程式設計師分享JavaScript名稱空間模式例項詳解程式設計師JavaScript模式
- 好程式設計師分享SpringBoot須掌握的註解程式設計師Spring Boot
- 好程式設計師web前端分享常見面試題程式設計師Web前端面試題
- 好程式設計師web前端教程分享js中的模組化二程式設計師Web前端JS
- 好程式設計師web前端教程分享js中的模組化一程式設計師Web前端JS
- 好程式設計師web前端培訓分享學習JavaScript程式設計師Web前端JavaScript
- 好程式設計師web前端教程分享javascript 練習題程式設計師Web前端JavaScript
- 好程式設計師web前端分享前端 javascript 練習題程式設計師Web前端JavaScript
- 好程式設計師web前端教程分享JavaScript面試題程式設計師Web前端JavaScript面試題
- 好程式設計師web前端教程分享JavaScript簡寫方法程式設計師Web前端JavaScript
- 好程式設計師web前端培訓分享JavaScript框架J程式設計師Web前端JavaScript框架
- 好程式設計師Web前端教程分享JavaScript開發技巧程式設計師Web前端JavaScript