javascript - js 关于时间的转换以及时间的加减。
phpcn_u1582
phpcn_u1582 2017-07-05 10:40:20
0
4
851

一、关于时间的转换

默认


mounted () {
  this.HomePageDisplay();
  var myDate = new Date();
  var reg=/[\u4E00-\u9FA5]/g;
  this.latestS=myDate.toLocaleString().replace(/\//g,'-').replace(/:/g,'-').replace(/[ ]/g,"").replace(reg,'');
  console.log(this.latestS)
},

这个我是转换的。

我想要的是 2017-07-05-04 。。

二、关于时间的加减。


1、2017-07-05-04  减去10个小时。 格式不变。。

2、 当前的小时减去10个小时。。    下面代码我写的。 给自己蠢哭了。 求指点。。
    


 var timeData = [
    myDate.getHours()-10, myDate.getHours()-9, myDate.getHours()-8, myDate.getHours()-7, myDate.getHours()-6, myDate.getHours()-5, myDate.getHours()-4, myDate.getHours()-3, myDate.getHours()-2, myDate.getHours()-1, myDate.getHours(),
  ];
phpcn_u1582
phpcn_u1582

全部回复(4)
迷茫

关于时间的处理,建议引入 moment 库。http://momentjs.com/docs/#/pa...

var t = moment().format('YYYY-MM-DD-HH');
console.log(t); //2017-07-03-18
var tsub = moment(t, 'YYYY-MM-DD-HH').subtract(10, 'hours').format('YYYY-MM-DD-HH');
console.log(tsub); //2017-07-03-08
阿神
  1. 需要2017-03-14-04-50-08这样的格式的话:

    var str = '2017/3/14 下午4:50:08';
    var arr = str.split(/[ ^d ]+/g).map(item => (parseInt(item, 10) < 10 ? '0' + parseInt(item, 10) : item )).join('-');
    console.log(arr);

  2. 至于时间的加减的话,如楼上所言,项目引入moment.js等库其实挺好的。

洪涛

雷雷

我想大声告诉你

Date.prototype.past = function(pattern, pastDays) {

function zeroize(num) {
    return num < 10 ? "0" + num : num;
};
var pastday = new Date((this - 0) - 1000 * 60 * 60 * 24 * pastDays);
var pattern = pattern; //    YYYY-MM-DD 或 MM-DD-YYYY 或 YYYY-MM-DD , hh : mm : ss
var dateObj = {
    "Y": pastday.getFullYear(),
    "M": zeroize(pastday.getMonth() + 1),
    "D": zeroize(pastday.getDate()),
    "h": zeroize(pastday.getHours()),
    "m": zeroize(pastday.getMinutes()),
    "s": zeroize(pastday.getSeconds())
};
return pattern.replace(/YYYY|MM|DD|hh|mm|ss/g, function(match) {
    switch (match) {
        case "YYYY":
            return dateObj.Y;
        case "MM":
            return dateObj.M;
        case "DD":
            return dateObj.D;
        case "hh":
            return dateObj.h;
        case "mm":
            return dateObj.m;
        case "ss":
            return dateObj.s;
    };
});

};
var timeEnd = new Date();
timeEnd = timeEnd.getFullYear() + '/' + (timeEnd.getMonth() + 1) + '/' + timeEnd.getDate() + ' ' + timeEnd.getHours() + ':' + timeEnd.getMinutes();
你的意思是当前时间往前推10分钟,new Date(timeEnd).past('YYYY-MM-DD hh : mm : ss', 1/(24*6));

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板