Cug*_*uga 0 javascript reduce typescript
我正在尝试将一组对象减少为一组唯一值.为此,我试图使用Set作为reduce()操作的累加器.
subscriptions = [
{list_id: 'abc', name: 'nom', subscribed: true},
{list_id: 'abc', name: 'nom', subscribed: true},
{list_id: 'ghi', name: 'nom', subscribed: false}];
return subscriptions.reduce((accumulator, currentValue) => {
if (currentValue.subscribed) {
return accumulator.add(currentValue.list_id);
}
}, new Set());
Run Code Online (Sandbox Code Playgroud)
我的测试报告了以下错误:
TypeError:无法读取未定义的属性"add"
我正在尝试做什么?我是否需要以其他方式做到这一点?
accumulator如果你的if条件失败,你需要返回.否则默认返回undefined(隐式).
let subscriptions = [
{list_id: 'abc', name: 'nom', subscribed: true},
{list_id: 'abc', name: 'nom', subscribed: true},
{list_id: 'ghi', name: 'nom', subscribed: false}];
let op = subscriptions.reduce((accumulator, currentValue) => {
if (currentValue.subscribed) {
accumulator.add(currentValue.list_id);
}
return accumulator
}, new Set());
console.log([...op])Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74 次 |
| 最近记录: |