标签:格式 运行 裁剪 数据 ons time leave 返回 console
如何将形式为20170707105858这样的时间字符串转换为2017/07/07 10:58:58这样的呢?
function changeTime(timeStr){
var date;
var timeArr=timeStr.split(‘‘);//将传进来的时间字符串拆分成数组 比如20170707105858就会转换为["2","0",..."5","8"],
console.log(timeArr);
var year=timeArr.slice(0,4).join(‘‘);在将上面的数组进行裁剪并且转变
var month=timeArr.slice(4,6).join(‘‘);
var day=timeArr.slice(6,8).join(‘‘);
var hour=timeArr.slice(8,10).join(‘‘);
var min=timeArr.slice(10,12).join(‘‘);
var sec=timeArr.slice(12,14).join(‘‘);
date=year+‘/‘+month+‘/‘+day+‘/‘+hour+‘:‘+min+‘:‘+sec;
return date;
}
比如我们运行:changeTime("20170707105825");// 返回结果为2017/07/07 10:58:25;
如果还想考虑的更细腻的话我们还可以加入判断,那样就不用限制传入的参数的数据类型,不论是number还是字符串,可以将传进的参数直接转为字符串,比如toString()方法;
转换就到此,假如我们想算两个形式为上述输出结果一样形式的时间的差,比如2017/09/14/ 15:25:03与2017/09/13/ 16:29:24只见差了多长时间
方法如下:
function totalTimeFun(start,end){
var totalTime;
var date1=new Date(changeTime(start)); //开始时间
var date2=new Date(changeTime(end)); //结束时间
var date3=date2.getTime()-date1.getTime(); //时间差的毫秒数
//计算出相差天数
var days=Math.floor(date3/(24*3600*1000));
//计算出小时数
var leave1=date3%(24*3600*1000); //计算天数后剩余的毫秒数
var hours=Math.floor(leave1/(3600*1000));
//计算相差分钟数
var leave2=leave1%(3600*1000); //计算小时数后剩余的毫秒数
var minutes=Math.floor(leave2/(60*1000));
//计算相差秒数
var leave3=leave2%(60*1000); //计算分钟数后剩余的毫秒数
var seconds=Math.round(leave3/1000);
return _time=days+"天 "+hours+"小时 "+minutes+" 分钟"+seconds+" 秒";
};
标签:格式 运行 裁剪 数据 ons time leave 返回 console
原文地址:http://www.cnblogs.com/mark20170707/p/7562754.html