javascript设置指定时区,不与本地时区关联(UTC版format函数)

format函数参考

//默认使用北京时区(+8:00区)
format(date, format, GMT=8) {
        let d = new Date();
        d.setTime(date + (GMT * 60) * 60 * 1000); 
        let  o = {
                "M+": d.getUTCMonth() + 1,
                "D+": d.getUTCDate(),
                "h+": d.getUTCHours(),
                "m+": d.getUTCMinutes(),
                "s+": d.getUTCSeconds(),
                "q+": Math.floor((d.getUTCMonth() + 3) / 3),
                "S": d.getUTCMilliseconds()
            };
        if (/(Y+)/.test(format)) {
            format = format.replace(RegExp.$1, (d.getUTCFullYear() + "").substr(4 - RegExp.$1.length))
        }
        for (let k in o) {
            if (new RegExp("(" + k + ")").test(format)) {
                format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length))
            }
        }
        return format;
    }

Date对象的UTC有关的方法:


getUTCDate()   根据世界时从 Date 对象返回月中的一天 (1 ~ 31)
getUTCDay()   根据世界时从 Date 对象返回周中的一天 (0 ~ 6)
getUTCMonth()   根据世界时从 Date 对象返回月份 (0 ~ 11)
getUTCFullYear()   根据世界时从 Date 对象返回四位数的年份
getUTCHours()   根据世界时返回 Date 对象的小时 (0 ~ 23)
getUTCMinutes()   根据世界时返回 Date 对象的分钟 (0 ~ 59)
getUTCSeconds()   根据世界时返回 Date 对象的秒钟 (0 ~ 59)
getUTCMilliseconds()   根据世界时返回 Date 对象的[毫秒](https://www.baidu.com/s?wd=%E6%AF%AB%E7%A7%92&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao)(0 ~ 999)
setUTCDate()   根据世界时设置 Date 对象中月份的一天 (1 ~ 31)
setUTCMonth()   根据世界时设置 Date 对象中的月份 (0 ~ 11)
setUTCFullYear()   根据世界时设置 Date 对象中的年份(四位数字)
setUTCHours()   根据世界时设置 Date 对象中的小时 (0 ~ 23)
setUTCMinutes()   根据世界时设置 Date 对象中的分钟 (0 ~ 59)
setUTCSeconds()   根据世界时设置 Date 对象中的秒钟 (0 ~ 59)
setUTCMilliseconds()   根据世界时设置 Date 对象中的[毫秒](https://www.baidu.com/s?wd=%E6%AF%AB%E7%A7%92&tn=SE_PcZhidaonwhc_ngpagmjz&rsv_dl=gh_pc_zhidao) (0 ~ 999)
toUTCString()   根据世界时,把 Date 对象转换为字符串

你可能感兴趣的:(javascript设置指定时区,不与本地时区关联(UTC版format函数))