如何獲得基于兩個陣列的物件,其中第一個陣列中的值是唯一的,第二個陣列中的值是任意的,其中鍵是一個詞,而值是這個詞的匹配數量?
比如說。
let uniqueArray = ['green', 'blue', 'red'];
let anyArray = ['red', 'green', 'red', 'blue, 'yellow', 'green', 'pink', 'red'];
我們得到。
{'green': 2, 'blue': 1, '紅色': 3}
uj5u.com熱心網友回復:
所以你想計算anyArray中的條目在uniqueArray中出現的次數。
你可以使用reduce來做到這一點:
let uniqueArray = ['green'/span>, 'blue', 'red'] 。
let anyArray = ['red'/span>, 'green'/span>, 'red', '藍色', '黃色', '綠色', '粉色', '紅色'] 。
const result = uniqueArray.reduce((data, key) => {
data[key] = anyArray.filter(x => x == key).length;
return data。
}, {});
console.log(result);
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/329136.html
標籤:
