您好,登錄后才能下訂單哦!
本文實(shí)例講述了JS實(shí)現(xiàn)將對象轉(zhuǎn)化為數(shù)組的方法。分享給大家供大家參考,具體如下:
前言
其實(shí)這本來應(yīng)該是一個(gè)很基礎(chǔ)的問題了,但我之做一想記錄一下是因?yàn)橹耙驗(yàn)閷ο筠D(zhuǎn)數(shù)組的時(shí)候卡住了后來弄了出來,但最近再遇到這個(gè)問題時(shí)竟然又卡主了,所以,關(guān)于這個(gè)問題,如何把一個(gè)對象{'未完成':5, '已完成':8, '待確認(rèn)':4, '已取消':6}
轉(zhuǎn)為[{"未完成":5},{"已完成":8},{"待確認(rèn)":4},{"已取消":6}]
,你已經(jīng)知道如何操作了,那這篇文章你也就沒有必要看了。
對象的兩種取值方式
我們都知道,JS中對象有兩種取值方式,通過在.后面直接加屬性名取值,這也是我們最常使用的一種方式,例如:
let obj = {name: 'wan'}; console.log(obj.name); //wan
這是最普通的一種方式,還有一種方式我們用的不太多,就是使用[]包住屬性名取值,類似于數(shù)組那樣,例如
let obj = {name: 'wan'}; console.log(obj[name]); //wan
那二者之前有什么區(qū)別呢,如果對于一個(gè)已知的對象來說,幾乎是沒什么區(qū)別的,但是如果我們需要的對象的key是變量呢?這就回到了我們文章開始是提到的問題,如何將一個(gè)對象轉(zhuǎn)化為數(shù)組
將對象轉(zhuǎn)化為數(shù)組
我們文章開始例子中的對象是
let obj = {'未完成':5, '已完成':8, '待確認(rèn)':4, '已取消':6};
如果目標(biāo)數(shù)組只是為了得到對象的key的集合或者value的集合還是相對容易的
var arr = [] for (let i in obj) { arr.push(obj[i]); //屬性 //arr.push(obj[i]); //值 } console.log(arr);
如果像我文中開始的需求的話就只需要改變一下push
進(jìn)去的內(nèi)容為一個(gè)對象即可
var arr = [] for (let i in obj) { let o = {}; o[i] = obj[i]; arr.push(o) } console.log(arr);
感興趣的朋友還可以使用本站在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運(yùn)行結(jié)果。
更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《JavaScript中json操作技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。