let date = new Date();
                date.getFullYear();  // 获取年份 格式1970年
                date.getMonth();   //获取当前年的月份 月份要 + 1 (0代表1月)date.getMonth() + 1
                date.getDate();    //获取当前日(1 - 31)
                date.getDay();     //获取当前星期几(0-6, 0为星期日)
                date.getHours();   //获取当前小时(0-23)
                date.getMinutes(); //获取当前分钟(0-59)
                date.getSeconds(); //获取当前秒数(0-59)
                date.getMilliseconds(); //获取当前毫秒数(0-999)
                date.getTime();  //获取当前时间,是个时间戳 从1970年到现在时间的毫秒数

js获取当前时间戳的方法

let timestamp = Date.parse(new Date());   // 结果:1570517275000   不推荐 毫秒改成了000显示

let timestamp = (new Date()).valueOf();  // 结果: 1570517275069  推荐	

let timestamp = new Date().getTime();  // 结果:1570517275069  推荐

js中单独调用new Date(); 显示这种格式 Mar 31 10:10:43 UTC+0800 2012
但是用new Date() 参与计算会自动转换为从1970.1.1开始的毫秒数
将字符串形式的日期转换为日期对象

let strTime = "2019-10-08";
let date = new Date(Date.parse(strTime.replace(/-/g,"/")));   //转换为Date()
```javascript

new Date() ; //参数时可以选的,也可以为字符串,但是格式必须正确

new Date(2019,1,1) ;  //正确

new Date("2019/1/1") ; //正确

new Date("2019-1-1");  //错误

```javascript
new Date( year, month, date, hrs, min, sec)  按给定的参数创建一日期对象  
  参数说明:  
  year的值为:需设定的年份-1900。例如需设定的年份是1997则year的值应为97,即1997-1900的结果。所以Date中可设定的年份最小为1900;  
  month的值域为0110代表1月,11表代表12月;  
  date的值域在131之间;  
  hrs的值域在023之间。从午夜到次日凌晨1点间hrs=0,从中午到下午1点间hrs=12;  
  min和sec的值域在059之间。  
  例 Date day=new Date(11,3,4);  
  //day中的时间为:04-Apr-11 12:00:00 AM  


       另外,还可以给出不正确的参数。  
  例 设定时间为1910230日,它将被解释成32日。  
  Date day=new Date(10,1,30,10,12,34);  
  System.out.println("Day's date is:"+day);  
  //打印结果为:Day's date is:Web Mar 02 10:13:34 GMT+08:00 1910  

1.日期格式转为日期标准字符串:2019-10-08

let formatDate = 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;  
    return y + '-' + m + '-' + d;  
};  

2.js方法返回值:2019-10-08 12:00:00

let 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;  
            };  

调用:formatDate(Date()) formatDate(Date())

3.时间戳转为日期格式

//时间戳转日期格式  
      let formatDateTime3 = function(time, format){  
          let t = new Date(time);  
         let tf = function(i){return (i < 10 ? '0' : '') + i};  
          return format.replace(/yyyy|MM|dd|HH|mm|ss/g, function(a){  
              switch(a){  
                  case 'yyyy':  
                      return tf(t.getFullYear());  
                      break;  
                  case 'MM':  
                      return tf(t.getMonth() + 1);  
                      break;  
                  case 'mm':  
                      return tf(t.getMinutes());  
                      break;  
                  case 'dd':  
                      return tf(t.getDate());  
                      break;  
                  case 'HH':  
                      return tf(t.getHours());  
                      break;  
                  case 'ss':  
                      return tf(t.getSeconds());  
                      break;  
              }  
          })  
      };  

4.时间格式字符串转为时间戳(毫秒)

let time1=2019-10-08 18:22:37’;  
let date=new Date(time1.replace(/-/g, '/'));  //开始时间  
let time2=date.getTime();  

如何将2019-10-08 12:00 转换成标准时间()?

let parserDate = function (date) {  
  let t = Date.parse(date);  
    if (!isNaN(t)) {  
        return new Date(Date.parse(date.replace(/-/g, "/")));  
    } else {  
        return new Date();  
    }  
}; 

转自不忘初心:http://blog.csdn.net/tomcat_2014/article/details/50514979

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐