JS将时间秒转换成天小时分钟秒的字符串


Posted in Javascript onJuly 10, 2019

项目中需求是这样,接口返回的数据中时间单位为秒,但前端显示的时候需要更人性化的带有单位(天,小时,分钟,秒)的字符串;

转换函数如下:

/**
 * 格式化秒
 * @param int  value 总秒数
 * @return string result 格式化后的字符串
 */
function formatSeconds(value) { 
 var theTime = parseInt(value);// 需要转换的时间秒 
 var theTime1 = 0;// 分 
 var theTime2 = 0;// 小时 
 var theTime3 = 0;// 天
 if(theTime > 60) { 
  theTime1 = parseInt(theTime/60); 
  theTime = parseInt(theTime%60); 
  if(theTime1 > 60) { 
   theTime2 = parseInt(theTime1/60); 
   theTime1 = parseInt(theTime1%60); 
   if(theTime2 > 24){
    //大于24小时
    theTime3 = parseInt(theTime2/24);
    theTime2 = parseInt(theTime2%24);
   }
  } 
 } 
 var result = '';
 if(theTime > 0){
  result = ""+parseInt(theTime)+"秒";
 }
 if(theTime1 > 0) { 
  result = ""+parseInt(theTime1)+"分"+result; 
 } 
 if(theTime2 > 0) { 
  result = ""+parseInt(theTime2)+"小时"+result; 
 } 
 if(theTime3 > 0) { 
  result = ""+parseInt(theTime3)+"天"+result; 
 }
 return result; 
}

ps:下面看下js时间戳与时间日期间相互转换

今天在工作中要将获取到的时间转换为时间戳,一时间竟不知道怎么用,于是不得不去查询资料,这里特地做个笔记。

1、将日期转换为时间戳。

要将日期转换为时间戳,首先得先获取到日期,这里可以直接指定日期,或者是使用当前日期。要获取当前日期,我们可以使用new Date()来获取。直接上代码。

// (1)、将当前日期转换为时间戳。
 var now = new Date();
 console.log(now.getTime()) // 将当前日期转换为时间戳,getTime()方法可返回距1970年1月1日之间的毫秒数。也可以使用 +now ,该效果等同于now.getTime()

// (2)、将指定日期转换为时间戳。
 var t = "2017-12-08 20:5:30"; // 月、日、时、分、秒如果不满两位数可不带0.
 var T = new Date(t); // 将指定日期转换为标准日期格式。Fri Dec 08 2017 20:05:30 GMT+0800 (中国标准时间)
 console.log(T.getTime()) // 将转换后的标准日期转换为时间戳。

 2、将时间戳转换为日期。

var t = 787986456465; // 当参数为数字的时候,那么这个参数就是时间戳,被视为毫秒,创建一个距离1970年1月一日指定毫秒的时间日期对象。
console.log(new Date(t)) // Wed Dec 21 1994 13:07:36 GMT+0800 (中国标准时间)

var t2 = "2017-5-8 12:50:30";
console.log(new Date(t2)) // Mon May 08 2017 12:50:30 GMT+0800 (中国标准时间)

var t3 = "2017-10-1";
console.log(new Date(t3)) // Sun Oct 01 2017 00:00:00 GMT+0800 (中国标准时间) 不设定时分秒,则默认转换为00:00:00

将时间戳转换为指定格式日期的方法封装:

// 格式化日期,如月、日、时、分、秒保证为2位数
function formatNumber (n) {
 n = n.toString()
 return n[1] ? n : '0' + n;
}
// 参数number为毫秒时间戳,format为需要转换成的日期格式
function formatTime (number, format) {
 let time = new Date(number)
 let newArr = []
 let formatArr = ['Y', 'M', 'D', 'h', 'm', 's']
 newArr.push(time.getFullYear())
 newArr.push(formatNumber(time.getMonth() + 1))
 newArr.push(formatNumber(time.getDate()))

 newArr.push(formatNumber(time.getHours()))
 newArr.push(formatNumber(time.getMinutes()))
 newArr.push(formatNumber(time.getSeconds()))

 for (let i in newArr) {
  format = format.replace(formatArr[i], newArr[i])
 }
 return format;
}

如需要调用上述方法,使用formatTime(1545903266795, 'Y年M月D日 h:m:s')或者formatTime(1545903266795, 'Y-M-D h:m:s')即可

总结

以上所述是小编给大家介绍的JS将时间秒转换成天小时分钟秒的字符串,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
javascript 弹出层组件(升级版)
May 12 Javascript
javascript 基础篇4 window对象,DOM
Mar 14 Javascript
jquery模拟SELECT下拉框取值效果
Oct 23 Javascript
node.js中的console.time方法使用说明
Dec 09 Javascript
JS+CSS实现带小三角指引的滑动门效果
Sep 22 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
Jun 12 Javascript
Angular 常用指令实例总结整理
Dec 13 Javascript
JavaScript ES6中export、import与export default的用法和区别
Mar 14 Javascript
ES6中数组array新增方法实例总结
Nov 07 Javascript
jQuery easyui datagird编辑行删除行功能的实现代码
Sep 20 jQuery
vue.js的状态管理vuex中store的使用详解
Nov 08 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
Feb 19 Javascript
js Array.slice的8种不同用法示例
Jul 10 #Javascript
vue-router二级导航切换路由及高亮显示的实现方法
Jul 10 #Javascript
Vue编程式跳转的实例代码详解
Jul 10 #Javascript
微信小程序在ios下Echarts图表不能滑动的问题解决
Jul 10 #Javascript
Vue事件修饰符native、self示例详解
Jul 09 #Javascript
如何自定义微信小程序tabbar上边框的颜色
Jul 09 #Javascript
微信小程序wx.request拦截器使用详解
Jul 09 #Javascript
You might like
哪吒敖丙传:新人物二哥敖乙出场 小敖丙奶气十足
2020/03/08 国漫
用PHP生成静态HTML速度快类库
2007/03/18 PHP
php学习之简单计算器实现代码
2011/06/09 PHP
php查看请求头信息获取远程图片大小的方法分享
2013/12/25 PHP
彻底删除thinkphp3.1案例blog标签的方法
2014/12/05 PHP
php实现俄罗斯乘法实例
2015/03/07 PHP
PHP的邮件群发系统phplist配置方法详细总结
2016/03/30 PHP
php 常用的系统函数
2017/02/07 PHP
PHP共享内存使用与信号控制实例分析
2018/05/09 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
PHP7 安装event扩展的实现方法
2019/10/08 PHP
关于Anemometer图形化显示MySQL慢日志的工具搭建及使用的详细介绍
2020/07/13 PHP
$()JS小技巧
2007/07/21 Javascript
一个js封装的不错的选项卡效果代码
2008/02/15 Javascript
window.onload 加载完毕的问题及解决方案(上)
2009/07/09 Javascript
javascript向flash swf文件传递参数值注意细节
2012/12/11 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
JS 获取鼠标左右键的键值方法
2014/10/11 Javascript
javascript实现全角半角检测的方法
2015/07/23 Javascript
js实现Form栏显示全格式时间时钟效果代码
2015/08/19 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
python利用sklearn包编写决策树源代码
2017/12/21 Python
python调用百度语音识别实现大音频文件语音识别功能
2018/08/30 Python
python实现kmp算法的实例代码
2019/04/03 Python
python 整数越界问题详解
2019/06/27 Python
Python对wav文件的重采样实例
2020/02/25 Python
pycharm实现print输出保存到txt文件
2020/06/01 Python
python实现双人五子棋(终端版)
2020/12/30 Python
CSS3 animation实现简易幻灯片轮播特效
2016/09/27 HTML / CSS
PHP如何与mysql建立链接
2013/05/05 面试题
初一科学教学反思
2014/01/27 职场文书
《小白兔和小灰兔》教学反思
2014/02/18 职场文书
学习经验演讲稿
2014/05/10 职场文书
图书馆标语
2014/06/19 职场文书
文明倡议书
2015/01/19 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书