本篇內(nèi)容主要講解“es6如何將對象轉(zhuǎn)成數(shù)組”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“es6如何將對象轉(zhuǎn)成數(shù)組”吧!
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),房山企業(yè)網(wǎng)站建設(shè),房山品牌網(wǎng)站建設(shè),網(wǎng)站定制,房山網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,房山網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
在es6中,可以利用Array對象的from()方法來將對象轉(zhuǎn)成數(shù)組,該方法可以將一個類數(shù)組對象或者可遍歷對象轉(zhuǎn)換成一個真正的數(shù)組;語法“Array.from(對象)”。
本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。
在es6中,可以利用Array對象的from()方法來將對象轉(zhuǎn)成數(shù)組。
Array.from()方法就是將一個類數(shù)組對象或者可遍歷對象轉(zhuǎn)換成一個真正的數(shù)組。
那么什么是類數(shù)組對象呢?所謂類數(shù)組對象,最基本的要求就是具有l(wèi)ength屬性的對象。
1、將類數(shù)組對象轉(zhuǎn)換為真正數(shù)組:
let arrayLike = { 0: 'tom', 1: '65', 2: '男', 3: ['jane','john','Mary'], 'length': 4 } let arr = Array.from(arrayLike) console.log(arr) // ['tom','65','男',['jane','john','Mary']]
那么,如果將上面代碼中l(wèi)ength屬性去掉呢?實踐證明,答案會是一個長度為0的空數(shù)組。
這里將代碼再改一下,就是具有l(wèi)ength屬性,但是對象的屬性名不再是數(shù)字類型的,而是其他字符串型的,代碼如下:
let arrayLike = { 'name': 'tom', 'age': '65', 'sex': '男', 'friends': ['jane','john','Mary'], length: 4 } let arr = Array.from(arrayLike) console.log(arr) // [ undefined, undefined, undefined, undefined ]
會發(fā)現(xiàn)結(jié)果是長度為4,元素均為undefined的數(shù)組
由此可見,要將一個類數(shù)組對象轉(zhuǎn)換為一個真正的數(shù)組,必須具備以下條件:
該類數(shù)組對象必須具有l(wèi)ength屬性,用于指定數(shù)組的長度。如果沒有l(wèi)ength屬性,那么轉(zhuǎn)換后的數(shù)組是一個空數(shù)組。
該類數(shù)組對象的屬性名必須為數(shù)值型或字符串型的數(shù)字
ps: 該類數(shù)組對象的屬性名可以加引號,也可以不加引號
2、將Set結(jié)構(gòu)的數(shù)據(jù)轉(zhuǎn)換為真正的數(shù)組:
let arr = [12,45,97,9797,564,134,45642] let set = new Set(arr) console.log(Array.from(set)) // [ 12, 45, 97, 9797, 564, 134, 45642 ]
Array.from
還可以接受第二個參數(shù),作用類似于數(shù)組的map
方法,用來對每個元素進行處理,將處理后的值放入返回的數(shù)組。如下:
let arr = [12,45,97,9797,564,134,45642] let set = new Set(arr) console.log(Array.from(set, item => item + 1)) // [ 13, 46, 98, 9798, 565, 135, 45643 ]
3、將字符串轉(zhuǎn)換為數(shù)組:
let str = 'hello world!'; console.log(Array.from(str)) // ["h", "e", "l", "l", "o", " ", "w", "o", "r", "l", "d", "!"]
4、Array.from參數(shù)是一個真正的數(shù)組:
console.log(Array.from([12,45,47,56,213,4654,154]))
像這種情況,Array.from會返回一個一模一樣的新數(shù)組
到此,相信大家對“es6如何將對象轉(zhuǎn)成數(shù)組”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!