Получить массив синонимов из естественной сети wordnet узлов - NodeJS - PullRequest
0 голосов
/ 11 декабря 2018

Я пытаюсь написать функцию, которая принимает слово и возвращает массив со всеми синонимами, найденными из функции поиска 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;
}

В качестве примера, если я помещу работу 'test' в функцию, я бы хотел, чтобы она возвращала все синонимы 'test'. Однако, он просто возвращает пустой массив.

Дайте мне знатьесли это не ясно, и спасибо за помощь:)

РЕДАКТИРОВАТЬ: я вижу, что это общий вопрос, однако помеченный дубликат не ясно, отвечая на этот вопрос для меня.если бы кто-то мог объяснить с помощью моего кода, что это будет оценено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...