在“中省略动作”;如果;JavaScript中的语句

在“中省略动作”;如果;JavaScript中的语句,javascript,rxjs,Javascript,Rxjs,为了学习Rxjs,我用一些字符串和对象弄脏了我的手 我试图使用字符串变量在一个空的声明对象中动态创建键/值 在这种方法中,我要做的是:迭代整个字符串,包括空格和逗号 如果一个字母已经在对象中,则增加其值,否则,添加它 因此,我提出了以下代码: import { ReplaySubject, from } from "rxjs"; import { tap, reduce } from "rxjs/operators"; // string const str = "I am afrai

为了学习Rxjs,我用一些字符串和对象弄脏了我的手

我试图使用字符串变量在一个空的声明对象中动态创建键/值

在这种方法中,我要做的是:迭代整个字符串,包括空格和逗号

如果一个字母已经在对象中,则增加其值,否则,添加它

因此,我提出了以下代码:

import { ReplaySubject, from } from "rxjs";
import { tap, reduce } from "rxjs/operators";

// string
const str =  "I am afraid I can not do that, Dave";
//string no spaces
let strNoSpace = str.replace(/\s+/g, ''); 

from(strNoSpace).pipe(
  reduce((acc, value) => {
    if(acc[value] !== undefined) {
      acc[value] = acc[value] + 1;
    } else {
      acc[value] = 1;
    }
    return acc;
  }, {}),
).subscribe(console.log);