【js】Date对象与字符串之间的转换

本文介绍JavaScript中Date对象的多种转换方式,包括toString(), toTimeString(), toDateString()等基本方法,以及自定义函数实现更复杂的日期格式化。通过实例演示如何将Date对象转换为指定格式的字符串,适用于前端开发中日期显示的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

常见的转换方式有:
一、toString() —— 把 Date 对象转换为字符串

var str = new Date().toString();
console.log(str);
 //output:
//Mon Oct 12 2015 11:13:22 GMT+0800

二、toTimeString() —— 把 Date 对象的时间部分转换为字符串

var str = new Date().toTimeString();
console.log(str);
 //output:
//11:16:31 GMT+0800

三、toDateString() —— 把 Date 对象的日期部分转换为字符串

var str = new Date().toDateString();
 console.log(str);
 //output:
//Mon Oct 12 2015

显而易见,以上三种方式的转换结果都未能达到我们的期望,需要进一步处理才能才能将Date对象转换为便于显示或与后台交互的时间字符串,如下:

  //定义将Date对象转换为字符串函数
  function timeToString(timeObj){
      var str = "";
      var year = timeObj.getFullYear();
      var month = timeObj.getMonth();
      var date = timeObj.getDate();
      var time = timeObj.toTimeString().split(" ")[0];
      var rex = new RegExp(/:/g);
      str = year+"-"+month+"-"+date+" "+time.replace(rex,"-");
     console.log("------当前日期:"+str);
     return str;
 }
 
 //定义通过时间戳转换为字符串函数
 function timeToObj(mstime){
     var d = new Date();
     d.setTime(mstime);
     timeToString(d);
}


  //定义将Date对象转换为字符串函数
 var d = new Date();
 timeToString(d);
 //output:
 //------当前日期:2015-9-12 11-43-28

 //定义通过时间戳转换为字符串函数
 timeToObj(1444617383284);
 //output:
 //------当前日期:2015-9-12 10-36-23
var formatDateTime = function (date) {      
       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();  
                minute = minute < 10 ? ('0' + minute) : minute;  
            var second=date.getSeconds();  
                second=second < 10 ? ('0' + second) : second;  
            return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second; 
  }
   //------当前日期:2015-9-12 10:36:23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值