Here is a minimal replicable code:
function print(num) {
console.log(num)
}
...later in the code
var num = 5;
var count = 0;
while (num != 0) {
setTimeout(function() {print(num);}, 1000 * count)
num--;
count++;
}
I want my output to be 5 4 3 2 1
but instead my output is 0 0 0 0 0
Why is this?