gpt4 book ai didi

javascript - 如何在 highland.js map 中使用错误

转载 作者:行者123 更新时间:2023-11-29 15:39:25 25 4
gpt4 key购买 nike

这个函数

var _ = require('highland');
var accounts = ['ack', 'bar', 'foo'];

_(accounts).map(function (x) {
return new Error(x);
}).errors(function (err, push) {
push(null, 'fark');
}).each(function (x) {
console.log(x);
});

日志

[Error: ack]
[Error: bar]
[Error: foo]

我希望它能记录

fark
fark
fark

如何在highland.js中正确使用错误?

最佳答案

正在阅读 http://highlandjs.org/#map 上链接的 map 函数的源代码你可以看到函数是这样应用的:

var fnVal, fnErr;
try {
fnVal = f(x);
} catch (e) {
fnErr = e;
}
push(fnErr, fnVal);

因此,如果您想通过 map 转换器将值转换为高地 StreamError,则需要抛出错误。

以下代码:

var _ = require('highland');
var accounts = ['ack', 'bar', 'foo'];

_(accounts).map(function (x) {
throw new Error(x);
}).errors(function (err, push) {
push(null, 'fark');
}).each(function (x) {
console.log(x);
});

会给你预期的

fark
fark
fark

关于javascript - 如何在 highland.js map 中使用错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22034943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com