Я пытаюсь написать функцию, которая принимает слово и возвращает массив со всеми синонимами, найденными из функции поиска 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'. Однако, он просто возвращает пустой массив.
Дайте мне знатьесли это не ясно, и спасибо за помощь:)
РЕДАКТИРОВАТЬ: я вижу, что это общий вопрос, однако помеченный дубликат не ясно, отвечая на этот вопрос для меня.если бы кто-то мог объяснить с помощью моего кода, что это будет оценено.