const shortUrlNumber = createShortUrlNumber();
console.log("Number RETURNED " + shortUrlNumber);
function createShortUrlNumber() {
// create random number
const shortNumber = Math.floor((Math.random() * 10) + 1);
// search database for any document with that shortNumber as key_url
UrlConverter.findOne({ "key_url": shortNumber }, function (err, data) {
if (err) {
return handleError(err);
} else if (data) {
console.log("FOUND A DOCUMENT: " + data);
// call function again to create a new random number and search database
createShortUrlNumber();
} else {
console.log("FOUND NONE: return shortNumber ");
return shortNumber;
}
})
}
If I return shortNumber
outside of UrlConverter.findOne()
it never gets checked against the database.
I’m wondering how do I return shortNumber
so that shortUrlNumber
has that value?