JavaScriptで、カウントダウンタイマーを作成しています。
わからないところが二つありましたので質問させて頂きます。
1、最後のrefreshはrecalcの{}の外でfunctionを使って記述していますが何故でしょうか。
2、何故最後の行でrecalc()を記述しなければいけないのでしょうか。
ご回答お待ちしております。宜しくお願い致します。
JavaScript
1function recalc() { 2 3 let counter = countdown(goal); 4 5 const time = `${counter[0]}日${counter[1]}時間${counter[2]}分${counter[3]}秒`; 6 7 document.getElementById('birthday').textContent = time; 8 9 refresh(); 10 } 11 12 function refresh() { 13 setTimeout(recalc,1000); 14 } 15 16 recalc(); 17
コード全体
JavaScript
1<script> 2 "use strict" 3 4 function countdown(due){ 5 const now = new Date(); 6 7 const reset = due.getTime() - now.getTime(); 8 9 const sec = Math.floor(reset/1000)%60; 10 const min = Math.floor(reset/1000/60)%60; 11 const hour = Math.floor(reset/1000/60/60) % 24; 12 const day = Math.floor(reset / 1000 / 60/ 60 / 24); 13 14 const count = [day,hour,min,sec]; 15 16 return count; 17 } 18 19 let goal = new Date(2020,12,6); 20 21 function recalc() { 22 23 let counter = countdown(goal); 24 25 const time = `${counter[0]}日${counter[1]}時間${counter[2]}分${counter[3]}秒`; 26 27 document.getElementById('birthday').textContent = time; 28 29 refresh(); 30 } 31 32 function refresh() { 33 setTimeout(recalc,1000); 34 } 35 36 recalc(); 37 </script>
回答1件
あなたの回答
tips
プレビュー