从自然节点的词网获取同义词数组-NodeJS

时间:2018-12-11 10:21:38

标签: javascript node.js nlp

我正在尝试编写一个函数,该函数需要一个单词并返回一个数组,该数组包含从自然节点wordnet查找函数(https://github.com/NaturalNode/natural)中找到的所有同义词

但是,我在返回最终数组时遇到问题。我认为我的问题与范围有关。就像我在wordnet查找中记录数组一样,我具有正确的数组。但是,这似乎并没有影响我要返回的数组

var getSynomyns = function(keyword){
    var synonymsArr = [];
    console.log(`GETTING SYNOMYNS FOR ${keyword}`);

    wordnet.lookup(keyword, function(results){
        results.forEach(function(result){
            result.synonyms.forEach(function(syn){
                if(synonymsArr.indexOf(syn) === -1){
                    synonymsArr.push(syn);
                }
            });
        });
    console.log(synonymsArr);
    //return synonyms;
    });
    return synonymsArr;
}

例如,如果将工作“测试”放入功能中,我希望它返回“测试”的所有同义词。但是,它只返回一个空数组。

让我知道是否不清楚,谢谢您的帮助:)

编辑:我看到这是一个常见问题,但是,在为我回答此问题时,带标签的重复项不清楚。如果有人可以解释我的适用代码。

0 个答案:

没有答案