nodejs returns jumbled variable content when concurrent

Viewed 24

DEMO1

bot.on(async (msg) => {
    result = await contract.methods.name().call()
    console.log(result)

})

bot.start()

DEMO2

bot.on(async (msg) => {
    async function demo() {
        result = await contract.methods.name().call()
        return result
    }

    result = demo()
    console.log(result)
})

bot.start()

demo1 can return correct results when concurrent, demo2 can return confusing variable content when concurrent, what causes this

1 Answers

Try:

result = await demo();
console.log(result);
Related