JS时间戳和时间格式转换的几种方法

news/2024/10/19 6:24:48/

JS时间戳和时间格式转换的几种方法

时间戳转化为日期的方式

var timestamp = 1527521052;var newDate = new Date();newDate.setTime(timestamp * 1000);// Mon May 28 2018
console.log(newDate.toDateString());// Mon, 28 May 2018 15:24:12 GMT
console.log(newDate.toGMTString());// 2018-05-28T15:24:12.000Z
console.log(newDate.toISOString());// 2018-05-28T15:24:12.000Z
console.log(newDate.toJSON());// 2018/5/28
console.log(newDate.toLocaleDateString());// 2018/5/28 下午11:24:12
console.log(newDate.toLocaleString());// 下午11:24:12
console.log(newDate.toLocaleTimeString());// Mon May 28 2018 23:24:12 GMT+0800 (中国标准时间)
console.log(newDate.toString());// 23:24:12 GMT+0800 (中国标准时间)
console.log(newDate.toTimeString());// Mon, 28 May 2018 15:24:12 GMT
console.log(newDate.toUTCString());在这里插入代码片

1.JS获取当前时间( 年-月-日 时:分:秒):

function getNowFormatDate() {//获取当前时间var date = new Date();var seperator1 = "-";var seperator2 = ":";var month = date.getMonth() + 1<10? "0"+(date.getMonth() + 1):date.getMonth() + 1;var strDate = date.getDate()<10? "0" + date.getDate():date.getDate();var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate+ " " + date.getHours() + seperator2 + date.getMinutes() + seperator2 + date.getSeconds();return currentdate;
}

2.JS获取当前时间戳的方法

//方法一
var timestamp = (new Date()).getTime();
console.log(timestamp); //1495302061441//方法二
var timestamp2 = (new Date()).valueOf();
console.log(timestamp2); //1495302061447//方法三
var timestamp3 = Date.parse(new Date());
console.log(timestamp3);//1495302061000第一种和第二种是获取了当前毫秒的时间戳
最后一种获取的时间戳是把毫秒改成000显示

3.时间戳转化成时间格式

!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();var o=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),Date.prototype.Format=function(e){var t="";switch(this.getDay()){case 0:t="星期日";break;case 1:t="星期一";break;case 2:t="星期二";break;case 3:t="星期三";break;case 4:t="星期四";break;case 5:t="星期五";break;case 6:t="星期六"}var n={"M+":this.getMonth()+1,"d+":this.getDate(),"h+":this.getHours(),"m+":this.getMinutes(),"s+":this.getSeconds(),w:t};for(var r in/(y+)/.test(e)&&(e=e.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length))),n)new RegExp("("+r+")").test(e)&&(e=e.replace(RegExp.$1,1==RegExp.$1.length?n[r]:("00"+n[r]).substr((""+n[r]).length)));return e}}return r(e,[{key:"convert",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"y-m-d h:m:s";return"y-m-d h:m:s"==t?new Date(e).Format("yyyy-MM-dd hh:mm:ss"):"y-m-d"==t?new Date(e).Format("yyyy-MM-dd"):new Date(e).Format(t)}},{key:"getAppointDate",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments[2],r=new Date,o=this.convert(r,n);if("w"==e){var a=new Date(r-6048e5*t);o=this.convert(a,n)}else"m"==e?(r.setMonth(r.getMonth()-t),o=this.convert(r,n)):"y"==e&&(r.setYear(r.getFullYear()-t),o=this.convert(r,n));return o}}]),e}();window.dateConvert=o}]);//    调用构造函数
let DC = window.dateConvert;
//    实例化
let dateFun = new DC()
//    常用方法的简写
let dateVal1 = dateFun.convert(new Date(),'y-m-d');//2019-05-23
let dateVal2 = dateFun.convert(new Date(),'y-m-d h:m:s');//2019-05-23 17:17:42
//    常规方法示例
let dateVal3 = dateFun.convert(1323122444323,'yyyy-MM-dd hh:mm:ss w');//2011-12-06 06:00:44 星期二
let dateVal4 = dateFun.convert(new Date(),'yyyy-MM-dd hh:mm:ss w');//2019-05-23 17:17:42 星期四
let dateVal5 = dateFun.convert(new Date(),'yyyy-MM-dd hh:mm:ss');//2019-05-23 17:17:42
let dateVal6 = dateFun.convert(new Date(),'yyyy-MM-dd');//2019-05-23
let dateVal7 = dateFun.convert(new Date(),'w');//星期四
let dateVal8 = dateFun.convert(new Date(),'MM');//05月
let dateVal9 = dateFun.convert(new Date(),'yyyy');//年份
console.log(dateVal1);
console.log(dateVal2);
console.log(dateVal3);
console.log(dateVal4);
console.log(dateVal5);
console.log(dateVal6);
console.log(dateVal7);
console.log(dateVal8);
console.log(dateVal9);// 时间设置function getLocalTime(i) {              if (typeof i !== "number") {                return new Date();            }              var d = new Date();              var len = d.getTime();              var offset = d.getTimezoneOffset() * 60000;              var utcTime = len + offset;              return new Date(utcTime + 3600000 * i);        }var timezone = -2; // 时区 : 东区时区1~12 西区时区-1~-12            var date;date = getLocalTime(timezone).toString().split("GMT+")[0].toString();    $("#showdate").html(date);    let dateVal2 = dateFun.convert(date,'y-m-d h:m:s');		    console.log(dateVal2)这里插入代码片

4.比对时间大小

//时间大小比对function checkDate(date1, date2) {var oDate1 = new Date(date1);var oDate2 = new Date(date2);if (oDate1.getTime() >= oDate2.getTime()) {return false;} else {return true;}}
console.log(checkDate('2018-09-10 11:12:12', '2019-12-15 12:12:12'))  //ture在这里插入代码片

5.校验时间格式

//验证时间格式function strDateTime(str) {var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;var r = str.match(reg);if (r == null) return false;var d = new Date(r[1], r[3] - 1, r[4], r[5], r[6], r[7]);return (d.getFullYear() == r[1] && (d.getMonth() + 1) == r[3] && d.getDate() == r[4] && d.getHours() == r[5] && d.getMinutes() == r[6] && d.getSeconds() == r[7]);}

6.时间转换时间戳

// 也很简单
function timestamp(strtime){var date = new Date(strtime); 
//传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。
// Date()参数形式有7种
// new Date("month dd,yyyy hh:mm:ss");=>new Date("September 16,2016 14:15:05");
// new Date("month dd,yyyy");=>new Date("September 16,2016");
// new Date("yyyy/MM/dd hh:mm:ss");=>new Date("2016/09/16 14:15:05");
// new Date("yyyy/MM/dd");=>new Date("2016/09/16");
// new Date(yyyy,mth,dd,hh,mm,ss);=>new Date(2016,8,16,14,15,5); => 月份从0~11
// new Date(yyyy,mth,dd);=>new Date(2016,8,16);
// new Date(ms);=>new Date(1474006780);
// 可以这样做
var date = new Date(strtime.replace(/-/g, '/'));// 有三种方式获取,在后面会讲到三种方式的区别
time1 = date.getTime();//精确到毫秒:1398250549123
time2 = date.valueOf();//精确到毫秒:1398250549123
time3 = Date.parse(date);//只能精确到秒,毫秒将用0来代替:1398250549000
console.log(time1,time2,time3)//1398250549012 1398250549012 1398250549000
return time1;
}
console.log(timestamp('2014-04-23 18:55:49:12'))//1398250549012

7.new Date()转时间格式(yyyy-MM-dd hh:mm:ss格式,简单版)

Date.prototype.format = function(fmt) { var o = { "M+" : this.getMonth()+1,                 //月份"d+" : this.getDate(),                    //日"h+" : this.getHours(),                   //小时"m+" : this.getMinutes(),                 //分"s+" : this.getSeconds(),                 //秒"q+" : Math.floor((this.getMonth()+3)/3), //季度"S"  : this.getMilliseconds()             //毫秒}; if(/(y+)/.test(fmt)) {fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); }for(var k in o) {if(new RegExp("("+ k +")").test(fmt)){fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));}}return fmt; 
}        
var times = new Date('Fri May 31 2019 11:51:47 ').format("yyyy-MM-dd hh:mm:ss");
console.log(times)//2019-05-31 11:51:47

8.js获取服务器当前时间,而非系统时间

Date.prototype.format = function(fmt) { 2var o = { "M+" : this.getMonth()+1,                 //月份"d+" : this.getDate(),                    //日"h+" : this.getHours(),                   //小时"m+" : this.getMinutes(),                 //分"s+" : this.getSeconds(),                 //秒"q+" : Math.floor((this.getMonth()+3)/3), //季度"S"  : this.getMilliseconds()             //毫秒}; if(/(y+)/.test(fmt)) {fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); }for(var k in o) {if(new RegExp("("+ k +")").test(fmt)){fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));}}return fmt; 
}     
function getServerDate(){return new Date($.ajax({async: false}).getResponseHeader("Date"));
}console.log(getServerDate());   
function getLocalTime(i) {if (typeof i !== "number") {return new Date();}var d = getServerDate();var len = d.getTime();var offset = d.getTimezoneOffset() * 60000;var utcTime = len + offset;return new Date(utcTime + 3600000 * i);
}/***@parmas***/
function eachAreaTime(Tzone){var timezone = Tzone; // 时区 : 东区时区1~12 西区时区-1~-12var date,localTime;date = getLocalTime(timezone).toString().split("GMT+")[0].toString();localTime =new Date(date).format("yyyy-MM-dd hh:mm:ss");//如果是mac系统下兼容safari浏览器,最好改为:format("yyyy/MM/dd hh:mm:ss")return localTime;
}
console.log('北京,菲律宾,马来西亚,台湾时间',eachAreaTime(8));
console.log('印度时间',eachAreaTime(5.5));
console.log('印尼,泰国,越南时间',eachAreaTime(7))Fri May 31 2019 23:24:49 GMT+0800 (中国标准时间)  VM311:48 北京,菲律宾,马来西亚,台湾时间 2019-05-31 23:24:49  VM311:49 印度时间 2019-05-31 20:54:49  VM311:50 印尼,泰国,越南时间 2019-05-31 22:24:49

http://www.ppmy.cn/news/689732.html

相关文章

世界城市时间计算

1.城市对应的时区表 地拉那Europe/Tirane 图古尔特Africa/Algiers 都柏林Europe/Dublin 塔林Europe/Tallinn 库雷萨雷Europe/Tallinn 安道尔Europe/Andorra 萨尔茨堡Europe/Vienna 维也纳Europe/Paris 因斯布鲁克Europe/Vienna 布雷根茨Europe/Vienna 格蒙登Europe/Vienna 米尔…

python 、mysql 时间戳 时间 字符串之间的转化

python from datetime import datetime,timedelta from dateutil import tz #时间戳 改时间# Kolkata 印度 # Jakarta 印尼 tz_nation tz.gettz(Asia/Jakarta) def timestamp_tz(time_stamp,tz_nationtz_nation):return datetime.fromtimestamp(time_stamp,tztz_nation) if …

TikTok(国际版抖音)时间线

2012年3月 字节跳动在北京成立 2015年8月 开始全球化布局 2016年9月 抖音短视频上线 2017年5月 TikTok上线 2018年12月 苹果公司“2018年度精选榜单&#xff08;Best of 2018&#xff09;”出炉&#xff0c;TikTok超过LINE、Google Maps等成为日本App Store…

Hive时间函数from_utc_timestamp 把UTC标准时间切换到北京时间

首先简单地解释下几个含义&#xff1a; 1. 时间戳(unix timestamp) 表示以(1970-01-01 00:00:00)为起点&#xff0c;到现在的秒数。 2. GMT和UTC 先说结论&#xff0c;UTC与GMT基本上等同&#xff0c;误差不超过0.9秒。 GMT&#xff0c;即格林尼治标准时间&#xff0c;也就…

django mysql 时间_Python Django MySQL,时区、日期、时间戳(USE_TZ=True时的时间存储问题)...

Python Django MySQL,时区、日期、时间戳,写下这个标题的时候,头脑里面回荡着火车上的经典广告词:啤酒、饮料、矿泉水,花生、瓜子、八宝粥。当然本文跟这些零食吃喝没有关系,我们主要来聊聊时间问题。 环境说明: 1、约定: 本文中的“时间”,如未特别说明均指“日期+时…

将GPS获得的UTC时间转换成本地时间的方法

通过GPS模块可以得到UTC时间&#xff0c;但如何将UTC时间转换成你所在地的本地时间呢&#xff1f;下面介绍一种自己曾经使用过并得到过验证的计算方法&#xff1a; 前提&#xff1a;已知UTC时间&#xff0c;经纬度 一、首先通过经纬度来计算出所在地时区 // 计算时区函数&…

NFT跨界OG亲述:Azuki的崩溃让「NFT商业叙事」彻底毁灭

2年前&#xff0c;我挥别了潮玩公司高管的稳定生活&#xff0c;怀揣着对元宇宙和Web3的理想&#xff0c;踏入了NFT市场的创业之旅。 在过去2年野蛮生长的市场中&#xff0c;我推出过多个项目&#xff0c;其中有笨拙生硬的把Web2的IP和产品搬到Web3去推广的失败案例&#xff1b;…

Linux在线升级JDK版本(不用去官网下载安装包)

Linux在线升级JDK版本 ​ 只要3个命令 确保系统已连接到互联网&#xff1a;确保你的 Linux 系统已连接到互联网&#xff0c;以便下载和安装新的 JDK 版本。 更新软件包管理器&#xff1a;运行以下命令来更新系统的软件包管理器&#xff08;在不同的 Linux 发行版中&#xff0…