Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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 RxJS创建新的运算符何时使用长路径_Javascript_Rxjs - Fatal编程技术网

Javascript RxJS创建新的运算符何时使用长路径

Javascript RxJS创建新的运算符何时使用长路径,javascript,rxjs,Javascript,Rxjs,我正在尝试确定何时需要使用long方式,例如: function mySimpleOperator(someCallback) { return Observable.create(subscriber => { var source = this; var subscription = source.subscribe(value => { subscriber.next(someCallback(value)); },

我正在尝试确定何时需要使用long方式,例如:

function mySimpleOperator(someCallback) {
   return Observable.create(subscriber => {
     var source = this;
     var subscription = source.subscribe(value => {
        subscriber.next(someCallback(value));
     },
     err => subscriber.error(err),
     () => subscriber.complete());
     return subscription;
   });
}
 function mySimpleOperator(someCallback) {
    return this.map(val => someCallback(value));
 }
当我可以使用更短的方式时,例如:

function mySimpleOperator(someCallback) {
   return Observable.create(subscriber => {
     var source = this;
     var subscription = source.subscribe(value => {
        subscriber.next(someCallback(value));
     },
     err => subscriber.error(err),
     () => subscriber.complete());
     return subscription;
   });
}
 function mySimpleOperator(someCallback) {
    return this.map(val => someCallback(value));
 }

尽量使用RxJS库提供的运算符,并创建自己的运算符,这是绝对必要的。RxJS团队对现有运营商进行了大量优化。另外,您的新操作员可能在将来不兼容,或者可能无法获得RxJS团队将添加到库的下一版本中的性能优化