[英]How to dynamically get a list of objects from an array using an array of values
我有一個對象列表(稱為 this.listOfDesserts):
每個對象 (this.listOfDesserts) 包含以下內容:
我還有一個名為 this.relevantColumns 的變量,它是通過如下一行代碼動態生成的:
this.relevantColumns = this.listOfCakes.summaryCakes.numberOfUsers;
最終結果始終是一個數組。 例如,它可以等於 ['1305','1306']
如何從 this.listOfDesserts 生成索引(在第二張圖片中我相信它由紫色表示,例如 1304,1305,1306,1307,1308,header,id)等於數組(this.relevantColumns)?
在這個例子中,我如何能夠在沒有硬編碼的情況下獲得索引為 1305 和 1306 的 this.listOfDessert 中所有對象的列表?
一切都是動態編寫的,所以我不能真正使用像 this.variableName[1304] 這樣的硬編碼行。
有兩個階段。
一、獲取所有值的完整字典
listOfDesserts = [{ 1: {obj: 1}, 2: {obj: 2}} , {3: {obj: 3}}]
listOfDessertsFlattened = Object.assign({}, ...listOfDesserts) // { '1': { obj: 1 }, '2': { obj: 2 }, '3': { obj: 3 } }
二、映射相關列並從數組中獲取結果:
listOfDessertsFlattened = { 1: {obj: 1}, 2: {obj: 2}, 3: {obj: 3}};
relevantColumns = [1, 3];
result = relevantColumns.map((columnName) => listOfDessertsFlattened[columnName]) //[ { obj: 1 }, { obj: 3 } ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.