Array's reverse vs simple arithmethic
It turns out accessing console take's more time than pushing a value in an array. Console.log is indeed implemented as a synchronous function (next print starts only after last print finishes).
Meaning, there is no buffering system. The program goes to blocking state until console.log() finish printing, everytime.
Performance difference in above two cases is due to the difference in the number of console.log() call.