JS实现CST格式时间转正常‘yyyy-MM-dd HH:mm:

2022-01-13  本文已影响0人  遇见I你

注:CST转成GMT时间存在new Date()导致原时间会增加14h,所以在设置时间时,需要-14h。

function cstDateFormat(date, format) {
    date = new Date(date);
    date.setHours(date.getHours() - 14);
    var dset = {
        'M+': date.getMonth() + 1, // 月
        'd+': date.getDate(), // 日
        'H+': date.getHours(), // 时
        'm+': date.getMinutes(), // 分
        's+': date.getSeconds(), // 秒
        'q+': Math.floor((date.getMonth() + 3) / 3), // 刻钟
        'S': date.getMilliseconds() // 毫秒
    };

    if (/(y+)/.test(format)) {
        format = format.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
    }

    for (var i in dset) {
        if (new RegExp('(' + i + ')').test(format)) {
            format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? dset[i] : ('00' + dset[i]).substr(('' + dset[i]).length));
        }
    }
    return format;
}

//方法调用
var timeString = cstDateFormat('Thu Jan 13 09:42:25 CST 2022', 'yyyy-MM-dd HH:mm:ss');

上一篇下一篇

猜你喜欢

热点阅读