Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法识别的javascript语法_Javascript_Rxjs - Fatal编程技术网

无法识别的javascript语法

无法识别的javascript语法,javascript,rxjs,Javascript,Rxjs,我在研究时遇到了一个特定的javascript代码 我理解它的功能,但据我记忆所及,我以前从未见过这种语法。这是哪种语法 编辑: 我对map(x=>x*x)(of(1,2,3))部分感到困惑@Olian04很好地解释了map()是一个高阶函数map()返回一个函数,该函数被传递(1,2,3)的参数由于您没有确切指定被剪断的部分让您感到困惑,因此我将快速分解代码,排除导入: x=>x*x是一个箭头函数。它与函数(x){returnx*x;} map是一个高阶函数,它将函数作为其参数map(f)。

我在研究时遇到了一个特定的javascript代码

我理解它的功能,但据我记忆所及,我以前从未见过这种语法。这是哪种语法

编辑:


我对
map(x=>x*x)(of(1,2,3))
部分感到困惑@Olian04很好地解释了
map()
是一个高阶函数
map()
返回一个函数,该函数被传递(1,2,3)的参数

由于您没有确切指定被剪断的部分让您感到困惑,因此我将快速分解代码,排除导入:

  • x=>x*x
    是一个箭头函数。它与
    函数(x){returnx*x;}
  • map
    是一个高阶函数,它将函数作为其参数
    map(f)
    。它还返回一个函数
    fMap=map(f)
  • fMap
    是一个函数,它将一个可观测值作为参数,并且 返回一个可观察值,其中每个值都应用了函数
    f
    fObs=fMap(obs)
  • of
    是一个函数,它接受任意数量的参数,并返回一个可观察的对象,该对象将把这些参数作为事件发送给订阅者
    obs=of(1,2,3)
  • fObs.subscribe
    是一个高阶函数,它将函数作为其参数,并将其注册为事件订阅者
  • `value:${v}`
    是一个字符串文本模板,与执行
    'value:'+string(v)

谢谢,我会将问题移到正确的位置,因为我已要求主持人将此移到StackOverflowIced解释!可能还需要指出的是,
(v)=>…
v=>…
相同,它们都是带一个参数的箭头函数,非常感谢。我特别困惑于
map(x=>x*x)
是如何紧跟在
(of(1,2,3))
之前的。现在我知道了一个叫做“ArnabDas”的东西,太棒了。请随意接受答案,这样其他用户就会看到问题已经得到了回答。@ArnabDas
map
不是生活。它是一个高阶函数,接受一个函数并返回一个函数。IIFE是一个在其定义的同时被调用的函数。这些概念可能看起来很相似,但它们并不相同。
import { of } from 'rxjs';
import { map } from 'rxjs/operators';

map(x => x * x)(of(1, 2, 3)).subscribe((v) => console.log(`value: ${v}`));