I am trying write a function which print 5 wait to 1 sec and print number 4 wait for 2 secs and print number 3 wait for 3 secs and so on
I wrote this function :
for(let i=5;i>0;i--){
setTimeout(()=>{
let localTime = new Date().toLocaleString();
console.log(`${i} - ${localTime}`)
},5-i*1000);
}
And this prints:
'5 - 10/30/2019, 11:10:17 AM'
'4 - 10/30/2019, 11:10:17 AM'
'3 - 10/30/2019, 11:10:17 AM'
'2 - 10/30/2019, 11:10:17 AM'
'1 - 10/30/2019, 11:10:17 AM'
I wrote these set of statements :
console.log(new Date().toLocaleString());
setTimeout(()=>{
let localTime = new Date().toLocaleString();
console.log(`${5} - ${localTime}`)
},1000)
setTimeout(()=>{
let localTime = new Date().toLocaleString();
console.log(`${4} - ${localTime}`)
},2*1000)
setTimeout(()=>{
let localTime = new Date().toLocaleString();
console.log(`${3} - ${localTime}`)
},3*1000)
setTimeout(()=>{
let localTime = new Date().toLocaleString();
console.log(`${2} - ${localTime}`)
},4*1000)
setTimeout(()=>{
let localTime = new Date().toLocaleString();
console.log(`${1} - ${localTime}`)
},5*1000)
And these print:
'10/30/2019, 11:13:45 AM'
'5 - 10/30/2019, 11:13:46 AM'
'4 - 10/30/2019, 11:13:47 AM'
'3 - 10/30/2019, 11:13:48 AM'
'2 - 10/30/2019, 11:13:49 AM'
'1 - 10/30/2019, 11:13:50 AM'
The second set of statements are increasing the time by 1 sec but the set time out in for loop is not doing.
How to achieve the functionality and where am I going wrong?