我使用某个 Node.js 类进行文本分类。在最简单的形式中,它看起来像这样:
function TextCategorizer(preprocessors) {
...
}
“预处理器”是一个形式的函数数组:
function(text) {
return "<modified text>"
}
例如,它们可用于删除标点符号、转换为小写等。
我可以像这样使用 TextCategorizer:
var cat = newTextCategorizer(preprocessors);
cat.train(text1,class1);
cat.train(text2,class2);
...
console.log(cat.classify(text3,class3);
预处理器按顺序为每个训练文本和分类文本调用。
现在,我需要添加一个新的预处理器功能——一个拼写纠正器。我发现最好的拼写更正异步工作(通过网络服务),所以,函数看起来像这样:
correctSpelling(text, callback) {
...
callback(corrected_version_of_text);
}
即它不返回值,而是使用该值调用回调函数。
我的问题是:我如何使用正确的拼写功能,作为我发送给 TextCategorizer 的预处理器数组中的预处理器之一?