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