js 时间格式换成 把字符串(yyyymmdd)转换成日期格式(yyyy-mm-dd)记录

注意: 1. 此处的标准时间格式为  2018-03-23 13:35:47

   2. 此处的毫秒为  js中getTime();

   3. 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总  数

   4. getTime() 返回 1970 年 1 月 1 日至今的总 毫秒 数,不是总秒数

一、将毫秒转换成标准时间格式

function formatDate(date){

        date = new Date(date);
        var y=date.getFullYear();
        var m=date.getMonth()+1;
        var d=date.getDate();
        var h=date.getHours();
        var m1=date.getMinutes();
        var s=date.getSeconds();
        m = m<10?("0"+m):m;
        d = d<10?("0"+d):d;
        return y+"-"+m+"-"+d+" "+h+":"+m1+":"+s;
    }

 

二、将标准时间格式转换成毫秒

var date = Date.parse(new Date('2018-03-23 13:35:47'));// 参数为String
    console.log(date);//1521783347000

三、ios系统、safari处理日期的格式,日期对象比较大小

  1. ios系统、safari只能识别"2018/10/15 00:00:00",不能识别"2018-10-15 00:00:00",所以需要转换格式;

    let startTime = startTime .replace("-", "/").replace("-", "/");

  2. 日期字符串需要转换成日期对象来比较大小,也可以转成毫秒比较;

    let startTime = new Date(startDate); 

    let now = new Date();//'Tue Sep 17 2019 11:41:07 GMT+0800 (中国标准时间)';

    new Date()即'Tue Sep 17 2019 11:41:07 GMT+0800 (中国标准时间)', 这种日期对象格式可以直接比较大小;

四、js把字符串(yyyy-mm-dd)转换成日期格式(yyyymmdd) 

  var s = this.formatDate("1521783347000"); 

      var e = this.formatDate("1521783347000");

        this.searchForm.startTime = s.replace(/[-T]/g, '');// yyyymmdd

        this.searchForm.end_Date = e.replace(/[-T]/g, '');//yyyymmdd

五、js把字符串(yyyymmdd)转换成日期格式(yyyy-mm-dd)

1、第一种写法:

 
 var  r= "20112233" .replace(/^(\d{4})(\d{2})(\d{2})$/,  "$1-$2-$3" )

2、第二种写法: 

 
 var  dateString =  '19930701' ;
 var  pattern = /(\d{4})(\d{2})(\d{2})/;
 var  formatedDate = dateString.replace(pattern,  '$1-$2-$3' );

你可能感兴趣的:(js 时间格式换成 把字符串(yyyymmdd)转换成日期格式(yyyy-mm-dd)记录)