ES6學習總結--ES6中新增的數組知識

Array.from(xxx)方法

let  json = {
    '0': 'aaa',
    '1': 'bbb',
    '2': 'ccc',
    length:3
}
let  json2 = {
    'name': 'aaa',
    'name1': 'bbb',
    'name2': 'ccc',
    length:3
}
console.log(Array.from(json));
console.log(Array.from(json2));
結果:
["aaa", "bbb", "ccc"]
[undefined, undefined, undefined]

這就是一個標準的JSON數組格式,跟普通的JSON對比是在最後多了一個length屬性。只要是這種特殊的json格式均可以輕鬆使用ES6的語法轉變成數組。在ES6中絕大部分的Array操做都存在於Array對象裏。咱們就用Array.from(xxx)來進行轉換。程序員

注意:
使用Array.from(xxx)來進行轉換的時候必須注意到json的格式必須是數組格式的【如上面的json】,可是相似上面json2的格式就不行了json

Array.of()方法

它負責把一堆文本或者變量轉換成數組。在開發中咱們常常拿到了一個相似數組的字符串,須要使用eval來進行轉換,若是你一個老手程序員都知道eval的效率是很低的,它會拖慢咱們的程序。這時候咱們就能夠使用Array.of方法。咱們看下邊的代碼把一堆數字或者字符串轉換成數組並打印在控制檯上:數組

let arr =Array.of(3,4,5,6);
console.log(arr);
let arr2 =Array.of('aaa','vvv','fff');
console.log(arr2);

結果:函數

[3, 4, 5, 6]
['aaa', 'vvv', 'fff']

find( )實例方法

所謂的實例方法就是並非以Array對象開始的,而是必須有一個已經存在的數組,而後使用的方法,這就是實例方法。這裏的find方法是從數組中查找。在find方法中咱們須要傳入一個匿名函數,函數須要傳入三個參數:測試

  • value:表示當前查找的值。
  • index:表示當前查找的數組索引。
  • arr:表示當前數組。

函數中若是找到符合條件的數組元素就進行return,並中止查找。你能夠拷貝下邊的代碼進行測試,就會知道find做用。code

let arr=[1,2,3,4,5,6,7,8,9];
console.log(arr.find(function(value,index,arr){
    return value > 5;
}))
console.log(arr.find(function(value,index,arr){
    return value < 1;
}))
let a = arr.find((val,index,arr)=>{
    return arr
})
console.log(a);

結果:

6
undefined
1

控制檯輸出了6,說明找到了符合條件的值,並進行返回了,若是找不到會顯示undefined。對象

fill( )實例方法

fill()也是一個實例方法,它的做用是把數組進行填充,它接收三個參數,第一個參數是填充的變量,第二個是開始填充的位置【被變量佔用】,第三個是填充到的位置【不會被變量佔用,依舊顯示】索引

let arr=[0,1,2,3,4,5,6,7,8,9];
arr.fill('aaa',2,5);
console.log(arr);

結果:

[0, 1, "aaa", "aaa", "aaa", 5, 6, 7, 8, 9]

數組的遍歷

for…of循環

let arr=['aaa','bbb','ccc']

for (let item of arr){
    console.log(item);
}

結果:

 aaa
 bbb
 ccc
相關文章
相關標籤/搜索