JavaScript 類數組轉化爲數組

很多情況下我們需要將類數組的對象(key是以0到n的數字或字符串,具有length屬性。例如:Arguments對象)轉化爲一個數組來進行各種例如forEach的數組操作,在ES5中是利用類數組對象強制調用Array對象的slice方法來進行轉換的,在ES6中Array擴展了from方法來進行轉換,另外,ES6中的擴展運算符也可將某些類數組對象轉化爲數組

各方法示例如下:

  1. 強制調用Array對象的slice方法
       console.log(Array.prototype.slice.call({
        '0': 'a',
        '1': 'b',
        '2': 'c',
        length: 3
    }));//Array(3) [ "a", "b", "c" ]
  1. Array.from()方法
       console.log(Array.from({
        '0':'a',
        '1':'b',
        '2':'c',
        length:3
    }));//Array(3) [ "a", "b", "c" ]
  1. 擴展運算符...
       console.log((function (a,b,c) {
        console.log([...arguments]);
    }("a","b","c")));//Array(3) [ "a", "b", "c" ]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章