每秒钟减less一块

我有一条逐行读取文件的高地stream,我想每秒慢一点。 我查看了文档,唯一的function是throttle()debounce() 。 这两个下降值。 我需要保持所有的价值观,放慢速度。

我build议将块映射到延迟stream并对其sorting:

 var _ = require('highland'); function delay(x) { return _(function (push, next) { setTimeout(function () { push(null, x); push(null, _.nil); }, 1000); }); } _([1, 2, 3, 4]).map(delay).series().each(_.log); 

在这里使用的延迟function似乎相当容易推广,所以如果你有兴趣发送拉请求,我很乐意回顾一下:)

这是与Caolan相同的版本,但是可以configuration。 我为自己制作了另外一个版本,以避免第一个元素的延迟。

 var _ = require('highland'); function delay(delayMs) { return function(x) { return _(function(push, next) { return setTimeout((function() { push(null, x); return push(null, _.nil); }), delayMs); }); }; } _([1, 2, 3, 4]).map(delay(1000)).series().each(_.log);