簡體   English   中英

在逗號分隔的字符串中如何過濾數組 object 的唯一值

[英]How to filter unique values of array object when in comma separated string

我有這個數組,其中 'data_type' 以逗號分隔的字符串保存值:

原始數組:

var getGroups = [
{ id: 52, data_type: "Prices & Volumes,Holdings,Reference Data" },
{ id: 51, data_type: "Prices & Volumes,Holdings,Reference Data" },
{ id: 49, data_type: "Fundamentals,Holdings,Corporate Actions,Reference Data" },
{ id: 25, data_type: "Holdings,Corporate Actions,Reference Data" }
]

如何捕獲、過濾和構建具有所有唯一值的新數組?

目標數組:

var targetArray = [
"Prices & Volumes",
"Holdings",
"Reference Data",
"Fundamentals",
"Corporate Actions"
]

console.log('targetArray:');
console.log(targetArray);

["Prices & Volumes", "Holdings", "Reference Data", "Fundamentals", "Corporate Actions"]

這是一個小提琴: https://jsfiddle.net/grnewkzs/1/

const getGroups = [
  { id: 52, data_type: "Prices & Volumes,Holdings,Reference Data" },
  { id: 51, data_type: "Prices & Volumes,Holdings,Reference Data" },
  { id: 49, data_type: "Fundamentals,Holdings,Corporate Actions,Reference Data" },
  { id: 25, data_type: "Holdings,Corporate Actions,Reference Data" }
];

const values = getGroups.map(item => item.data_type.split(','))
const sets = new Set([].concat(...values))
const array = Array.from(sets)

你需要知道為什么以及如何,或者你什么都沒有……那很糟糕。

 var getGroups = [ { id: 52, data_type: "Prices & Volumes,Holdings,Reference Data" }, { id: 51, data_type: "Prices & Volumes,Holdings,Reference Data" }, { id: 49, data_type: "Fundamentals,Holdings,Corporate Actions,Reference Data" }, { id: 25, data_type: "Holdings,Corporate Actions,Reference Data" } ] var targetArray = []; for (i=0;i<getGroups.length;i++){ items = getGroups[i]["data_type"].split(","); for (j=0;j<items.length;j++){ if (targetArray.indexOf(items[j]) === -1){targetArray.push(items[j]);} } } console.log('targetArray:'); console.log(targetArray);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM