JS將秒數換算成時分秒 以及轉化為年月日 時分秒
阿新 • • 發佈:2019-02-09
<script language="javascript"> /** * 將秒數換成時分秒格式 * 作者:龍周峰 */ function formatSeconds(value) { var secondTime = parseInt(value);// 秒 var minuteTime = 0;// 分 var hourTime = 0;// 小時 if(secondTime > 60) {//如果秒數大於60,將秒數轉換成整數 //獲取分鐘,除以60取整數,得到整數分鐘 minuteTime = parseInt(secondTime / 60); //獲取秒數,秒數取佘,得到整數秒數 secondTime = parseInt(secondTime % 60); //如果分鐘大於60,將分鐘轉換成小時 if(minuteTime > 60) { //獲取小時,獲取分鐘除以60,得到整數小時 hourTime = parseInt(minuteTime / 60); //獲取小時後取佘的分,獲取分鐘除以60取佘的分 minuteTime = parseInt(minuteTime % 60); } } var result = "" + parseInt(secondTime) + "秒"; if(minuteTime > 0) { result = "" + parseInt(minuteTime) + "分" + result; } if(hourTime > 0) { result = "" + parseInt(hourTime) + "小時" + result; } return result; } console.log(formatSeconds(10000002)) </script>
將秒數轉化成 XX小時XX分XX秒
改革的用法:
Sub.timeTransf = function(e,data) { var time=e.data('time'); e.html(formatSeconds(time)); function formatSeconds(value) { var secondTime = parseInt(value); var minuteTime = 0; var hourTime = 0; if (secondTime > 60) { minuteTime = parseInt(secondTime / 60); secondTime = parseInt(secondTime % 60); if (minuteTime > 60) { hourTime = parseInt(minuteTime / 60); minuteTime = parseInt(minuteTime % 60); } } var result = "" + parseInt(secondTime); if (minuteTime > 0) { if(minuteTime<10){ result = "0" + parseInt(minuteTime) + ":" + result; }else{ result = "" + parseInt(minuteTime) + ":" + result; } } if (hourTime > 0) { result = "" + parseInt(hourTime) + ":" + result; } return result; } }
將秒數轉化為 XX小時0X分0X秒
將時間搓轉化為 2018-09-20 14:10:00這種格式的:
formatDateTime: function(inputTime) { var date = new Date(inputTime); var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; var h = date.getHours(); h = h < 10 ? ('0' + h) : h; var minute = date.getMinutes(); var second = date.getSeconds(); minute = minute < 10 ? ('0' + minute) : minute; second = second < 10 ? ('0' + second) : second; return y+'-'+m+'-'+d+' '+' '+h+':'+minute+':'+second; },
注意:這裡的時間是毫秒,如果返回的時間是秒數的話,先轉化為毫秒 (m*1000)
格式化時間:
//格式化時間
function ReloadPubdate(string) {
var re = /^(\d{2,4})-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
if (re.test(string)) {
var t = string.match(re);
var d = new Date(t[1], t[2] - 1, t[3], t[4], t[5], t[6]);
var c = new Date();
var s = (c.getTime() - d.getTime()) / 1000;
var m = Math.floor(s / 60);
var h = Math.floor(s / 3600);
var d = Math.floor(s / 86400);
var n = Math.floor(s / (86400 * 30));
var y = Math.floor(s / (86400 * 365));
if (y > 0) return y + "年以前";
if (n > 0) return n + "個月以前";
if (d > 0) return d + "天以前";
if (h > 0) return h + "小時以前";
if (m > 0) return m + "分鐘以前";
}
return "剛剛";
}
傳入的string格式是: console.log(ReloadPubdate("2018-10-10 16:55:56"))
適用場景: