利用JavaScript函數做一個簡單的倒計時 <script> // 代碼如下: function countDown(time) { var nowTime = +new Date(); // 返回的是當前時間總的毫秒數 var inputTime = +new Date(time); // 返 ...
利用JavaScript函數做一個簡單的倒計時
<script> // 代碼如下: function countDown(time) { var nowTime = +new Date(); // 返回的是當前時間總的毫秒數 var inputTime = +new Date(time); // 返回的是用戶輸入時間總的毫秒數 var times = (inputTime - nowTime) / 1000; // times是剩餘時間總的秒數 var d = parseInt(times / 60 / 60 / 24); // 把秒數轉換成天數 (parselnt把得到的數轉換為整數) d = d < 10 ? '0' + d : d;//這裡為了讓時間數好看一點,比如把4天改成04天,所以加了三元判定,下麵也是如此; var h = parseInt(times / 60 / 60 % 24); //時 h = h < 10 ? '0' + h : h; var m = parseInt(times / 60 % 60); //分 m = m < 10 ? '0' + m : m; var s = parseInt(times % 60); // 秒 s = s < 10 ? '0' + s : s; return d + '天' + h + '時' + m + '分' + s + '秒'; //返回函數計算出的值 } console.log(countDown('這裡輸入你需要計算的時間')); //在控制台輸出你輸入時間與你電腦時間的差值就是倒計時; var date = new Date(); //獲取你電腦當前的時間; console.log(date); //在控制台輸出你當前電腦時間; </script> 1.核心演算法:輸入的時間減去現在的時間就是剩餘的時間,即倒計時 ,但是不能拿著時分秒相減,比如 02 分減去22分,結果會是負數的,所以要轉換為毫秒; 2.用時間戳來做。用戶輸入時間總的毫秒數減去現在時間的總的毫秒數,得到的就是剩餘時間的毫秒數; 3.把剩餘時間總的毫秒數轉換為天、時、分、秒 (時間戳轉換為時分秒)。