我正在构建一个带有 Firebase 后端的 React 应用程序。 我的 Firestore 集合包含以下格式的数据:
{
'Title One': 'The Title Here',
'Title One Score': '23',
'Title Two': 'The Second Title Here',
'Title Two Score': '43',
'Title Three': 'The Third Title Here',
'Title Three Score': '65',
}
我想过滤掉所有以“分数”结尾的字段,然后将分数的所有值相加。就像那样,我会得到 131。
我一直在尝试这些思路,但不知道如何进行
const totalScore = Object.entries(datasets)
.filter(([key, value]) => [
'Score'
].includes(key))
.sort()
.map(pair => {
const key = pair[0]
const value = pair[1]
//GET THE TOTAL SCORES HERE
return(
// <h2>{ TOTAL SCORE }</h2>
)
})
有人知道怎么做吗?请帮忙。
谢谢。
最佳答案
您可以获得条目并检查所需结尾的键。如果它有想要的结尾,则添加该值或取零以获得总值。
const
data = { 'Title One': 'The Title Here', 'Title One Score': '23', 'Title Two': 'The Second Title Here', 'Title Two Score': '43', 'Title Three': 'The Third Title Here', 'Title Three Score': '65' },
total = Object
.entries(data)
.reduce((t, [k, v]) => t + (k.endsWith(' Score') ? +v : 0), 0);
console.log(total);
关于javascript - 是否可以根据键的一部分过滤键值对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74777611/