ES6新增的數(shù)組知識實例小結(jié)
本文實例講述了ES6新增的數(shù)組知識。分享給大家供大家參考,具體如下:
1.JSON數(shù)組格式轉(zhuǎn)換
JSON的數(shù)組格式就是為了前端快速的把JSON轉(zhuǎn)換成數(shù)組的一種格式,json數(shù)組格式如下:
let json = { '0': '男', '1': '女', length:3 }
這就是一個標準的JSON數(shù)組格式,跟普通的JSON對比是在最后多了一個length屬性。只要是這種特殊的json格式都可以輕松使用ES6的語法轉(zhuǎn)變成數(shù)組。
把上邊的JSON代碼使用Array.from(xxx)來轉(zhuǎn)換成數(shù)組,代碼如下:
let json = { '0': '男', '1': '女', length: 2 } let arr = Array.from(json) console.log(arr)
結(jié)果為:
["男", "女"]
上述中的length的值等于json中的除length:2以為的總和,若值多余實際,在數(shù)組中則會出現(xiàn)undefined。如下:
結(jié)果為:
2.Array.of()方法
它負責(zé)把一堆文本或者變量轉(zhuǎn)換成數(shù)組。在開發(fā)中我們經(jīng)常拿到了一個類似數(shù)組的字符串,需要使用eval來進行轉(zhuǎn)換,會拖慢我們的程序。這時候我們就可以使用Array.of方法。比如:
let arr =Array.of(3,4,5,6); console.log(arr);
結(jié)果為:
當然它不僅可以轉(zhuǎn)換數(shù)字,字符串也是可以轉(zhuǎn)換的。
let arr =Array.of('es6',1,'開發(fā)'); console.log(arr);
結(jié)果為:
3.find( )實例方法
所謂的實例方法就是并不是以Array對象開始的,而是必須有一個已經(jīng)存在的數(shù)組,然后使用的方法。也即實例方法是針對已存在的數(shù)組的。
在find方法中我們需要傳入一個匿名函數(shù),函數(shù)需要傳入三個參數(shù)
- value:表示當前查找的值。
- index:表示當前查找的數(shù)組索引。
- arr:表示當前數(shù)組。
在函數(shù)中如果找到符合條件的數(shù)組元素就進行return,并停止查找。相關(guān)代碼如下:
let arr=[0,1,2,3,4,5,6,7,8,9]; console.log(arr.find(function(value,index,arr){ return value > 6; }))
返回結(jié)果為:7。說明找到了符合條件的值,并進行返回了,如果找不到會顯示undefined
4.fill( )實例方法
fill()也是一個實例方法,它的作用是把數(shù)組進行填充,它接收三個參數(shù),第一個參數(shù)是填充的變量,第二個是開始填充的位置,第三個是填充到的位置。
let arr=[0,1,2,3,4,5,6,7,8,9]; arr.fill('es',2,5); console.log(arr);
結(jié)果為:
上邊的代碼是把數(shù)組從第二位到第五位用es進行填充。
5.數(shù)組的遍歷--for…of循環(huán)
(1)輸出數(shù)組內(nèi)容
let arr=['男','女'] for (let item of arr){ console.log(item); }
結(jié)果為:男、女。
(2)輸出數(shù)組索引
let arr=['男','女'] for (let index of arr.keys()){ console.log(index); }
輸出值為:
0、1
(3)同時輸出數(shù)組的內(nèi)容和索引--entries()方法
let arr=['男','女'] for (let [index,val] of arr.entries()){ console.log(index+":"+val); }
結(jié)果為:
6.entries( )實例方法
entries()實例方式生成的是Iterator形式的數(shù)組,那這種形式的好處就是可以讓我們在需要時用next()手動跳轉(zhuǎn)到下一個值。如下代碼:
let arr=['男','女'] let list=arr.entries(); console.log(list.next().value); console.log(list.next().value);
結(jié)果為:
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
詳談js中數(shù)組(array)和對象(object)的區(qū)別
下面小編就為大家?guī)硪黄斦刯s中數(shù)組(array)和對象(object)的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02用javascript實現(xiàn)點擊鏈接彈出"圖片另存為"而不是直接打開
用javascript實現(xiàn)點擊鏈接彈出"圖片另存為"而不是直接打開...2007-08-08JavaScript函數(shù)的一些注意要點小結(jié)及js匿名函數(shù)
本文給大家總結(jié)了javascript函數(shù)的一些注意要點及js匿名函數(shù),主要知識點有:函數(shù)的基本語法、函數(shù)的參數(shù)、函數(shù)的重載相關(guān)知識,對本文感興趣的朋友一起學(xué)習(xí)吧2015-11-11Javascript中的return作用及javascript return關(guān)鍵字用法詳解
本文給大家介紹Javascript中的return作用及javascript return關(guān)鍵字用法詳解,對于大家學(xué)習(xí)javascript中的return知識有所幫助,感興趣的朋友一起學(xué)習(xí)吧2015-11-11Bootstrap的aria-label和aria-labelledby屬性實例詳解
這篇文章主要介紹了Bootstrap的aria-label和aria-labelledby屬性實例詳解,需要的朋友可以參考下2018-11-11