JS时间格式 GMT格式转换
摘自:http://hi.baidu.com/omys/blog/item/0901e76261e8d0cde6113ad5.html
JavaScript时间格式转换总结
1.当前系统区域设置格式(toLocaleDateString和toLocaleTimeString)
例子:(new Date()).toLocaleDateString() + " " + (new Date()).toLocaleTimeString()
结果: 2008年1月29日 16:13:11
2.普通字符串(toDateString和toTimeString)
例子: (new Date()).toDateString() + " " + (new Date()).toTimeString()
结果:Tue Jan 29 2008 16:13:11 UTC+0800
3.格林威治标准时间(toGMTString)
例子: (new Date()).toGMTString()
结果:Tue, 29 Jan 2008 08:13:11 UTC
4.全球标准时间(toUTCString)
例子: (new Date()).toUTCString()
结果:Tue, 29 Jan 2008 08:13:11 UTC
5.Date对象字符串(toString)
例子: (new Date()).toString()
结果:Tue Jan 29 16:13:11 UTC+0800 2008
var today = new Date();
document.write(today); //在IE中:Sun Mar 9 09:42:27 UTC+0800 2008;在FireFox中:Sun Mar 09 2008 09:42:27 GMT+0800
var sentence = today.toString();
document.write(sentence );//在IE中:Sun Mar 9 09:44:42 UTC+0800 2008;在FireFox中:Sun Mar 09 2008 09:44:42 GMT+0800
var gmt = today.toGMTString();
document.write(gmt );//在IE中Sun, 9 Mar 2008 01:46:38 UTC;在FireFox中:Sun, 09 Mar 2008 01:46:38 GMT
var utc = today.toUTCString();
document.write(utc );//在IE中Sun, 9 Mar 2008 01:46:38 UTC;在FireFox中:Sun, 09 Mar 2008 01:46:38GMT
var local = today.toLocaleString();
document.write(local );//在IE中2008年3月9日 9:48:26;在FireFox中:2008年3月9日 9:48:26
getFullYear:获得一个4位数字的整数;
getMonth:获得一个在0-11之间的整数;
getDate:获得一个1-31之间的整数;
getDay:获得一个0-6之间的整数,0代表星期天;
getHours:获得一个0-23之间的整数;
getMinutes:获得一个0-59之间的整数;
getSeconds:获得一个0-59之间的整数;
getTime :获得从utc纪元开始的毫秒数;
getTimezoneOffset:获得本地时间和GMT时间之间的差异,以分钟数表示;一般是 :-480(相差8个小时)
*******************************************************************************
JS/formatDate.js //实现GMT转换成.当前系统区域设置格式
function DateUtil(){}
/**
*功能:格式化时间
*示例:DateUtil.Format("yyyy/MM/dd","Thu Nov 9 20:30:37 UTC+0800 2006 ");
*返回:2006/11/09
*/
DateUtil.Format=function(fmtCode,date){
var result,d,arr_d;
var patrn_now_1=/^y{4}-M{2}-d{2}\sh{2}:m{2}:s{2}$/;
var patrn_now_11=/^y{4}-M{1,2}-d{1,2}\sh{1,2}:m{1,2}:s{1,2}$/;
var patrn_now_2=/^y{4}\/M{2}\/d{2}\sh{2}:m{2}:s{2}$/;
var patrn_now_22=/^y{4}\/M{1,2}\/d{1,2}\sh{1,2}:m{1,2}:s{1,2}$/;
var patrn_now_3=/^y{4}年M{2}月d{2}日\sh{2}时m{2}分s{2}秒$/;
var patrn_now_33=/^y{4}年M{1,2}月d{1,2}日\sh{1,2}时m{1,2}分s{1,2}秒$/;
var patrn_date_1=/^y{4}-M{2}-d{2}$/;
var patrn_date_11=/^y{4}-M{1,2}-d{1,2}$/;
var patrn_date_2=/^y{4}\/M{2}\/d{2}$/;
var patrn_date_22=/^y{4}\/M{1,2}\/d{1,2}$/;
var patrn_date_3=/^y{4}年M{2}月d{2}日$/;
var patrn_date_33=/^y{4}年M{1,2}月d{1,2}日$/;
var patrn_time_1=/^h{2}:m{2}:s{2}$/;
var patrn_time_11=/^h{1,2}:m{1,2}:s{1,2}$/;
var patrn_time_2=/^h{2}时m{2}分s{2}秒$/;
var patrn_time_22=/^h{1,2}时m{1,2}分s{1,2}秒$/;
if(!fmtCode){fmtCode="yyyy/MM/dd hh:mm:ss";}
if(date){
d=new Date(date);
if(isNaN(d)){
msgBox("时间参数非法\n正确的时间示例:\nThu Nov 9 20:30:37 UTC+0800 2006\n或\n2006/ 10/17");
return;}
}else{
d=new Date();
}
if(patrn_now_1.test(fmtCode))
{
arr_d=splitDate(d,true);
result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;
}
else if(patrn_now_11.test(fmtCode))
{
arr_d=splitDate(d);
result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;
}
else if(patrn_now_2.test(fmtCode))
{
arr_d=splitDate(d,true);
result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;
}
else if(patrn_now_22.test(fmtCode))
{
arr_d=splitDate(d);
result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd+" "+arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;
}
else if(patrn_now_3.test(fmtCode))
{
arr_d=splitDate(d,true);
result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"+" "+arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒";
}
else if(patrn_now_33.test(fmtCode))
{
arr_d=splitDate(d);
result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日"+" "+arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒";
}
else if(patrn_date_1.test(fmtCode))
{
arr_d=splitDate(d,true);
result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd;
}
else if(patrn_date_11.test(fmtCode))
{
arr_d=splitDate(d);
result=arr_d.yyyy+"-"+arr_d.MM+"-"+arr_d.dd;
}
else if(patrn_date_2.test(fmtCode))
{
arr_d=splitDate(d,true);
result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd;
}
else if(patrn_date_22.test(fmtCode))
{
arr_d=splitDate(d);
result=arr_d.yyyy+"/"+arr_d.MM+"/"+arr_d.dd;
}
else if(patrn_date_3.test(fmtCode))
{
arr_d=splitDate(d,true);
result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日";
}
else if(patrn_date_33.test(fmtCode))
{
arr_d=splitDate(d);
result=arr_d.yyyy+"年"+arr_d.MM+"月"+arr_d.dd+"日";
}
else if(patrn_time_1.test(fmtCode)){
arr_d=splitDate(d,true);
result=arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;
}
else if(patrn_time_11.test(fmtCode)){
arr_d=splitDate(d);
result=arr_d.hh+":"+arr_d.mm+":"+arr_d.ss;
}
else if(patrn_time_2.test(fmtCode)){
arr_d=splitDate(d,true);
result=arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒";
}
else if(patrn_time_22.test(fmtCode)){
arr_d=splitDate(d);
result=arr_d.hh+"时"+arr_d.mm+"分"+arr_d.ss+"秒";
}
else{
msgBox("没有匹配的时间格式!");
return;
}
return result;
};
function splitDate(d,isZero){
var yyyy,MM,dd,hh,mm,ss;
if(isZero){
yyyy=d.getYear();
MM=(d.getMonth()+1)<10?"0"+(d.getMonth()+1):d.getMonth()+1;
dd=d.getDate()<10?"0"+d.getDate():d.getDate();
hh=d.getHours()<10?"0"+d.getHours():d.getHours();
mm=d.getMinutes()<10?"0"+d.getMinutes():d.getMinutes();
ss=d.getSeconds()<10?"0"+d.getSeconds():d.getSeconds();
}else{
yyyy=d.getYear();
MM=d.getMonth()+1;
dd=d.getDate();
hh=d.getHours();
mm=d.getMinutes();
ss=d.getSeconds();
}
return {"yyyy":yyyy,"MM":MM,"dd":dd,"hh":hh,"mm":mm,"ss":ss};
}
function msgBox(msg){
window.alert(msg);
}
调用方法:
DateUtil.Format("yyyy/MM/dd","Thu Nov 9 20:30:37 UTC+0800 2006 ")
DateUtil.Format("yyyy-MM-dd hh:mm:ss","Thu Nov 9 20:30:37 UTC+0800 2006 ")
分享到:
相关推荐
标题“js实现把时间戳转换为yyyy-MM-dd hh:mm 格式(es6语法)”直接点明了文章的主题,即利用JavaScript和ES6的新特性来完成时间戳格式化的需求。描述部分简单介绍了文章的意图和对读者可能带来的帮助。 ### 知识点...
你可以自定义日期格式,如"yyyy-MM-dd HH:mm:ss"。下面是一个例子,展示如何将日期字符串按照特定格式解析,然后转换成另一种格式: ```java import java.text.ParseException; import java.text....
本文将深入探讨`format`方法以及如何使用它来格式化`Date`时间日期。 首先,`java.util.Date`是Java中的一个基础类,它表示了从1970年1月1日00:00:00 GMT到当前时间的毫秒数。然而,直接打印`Date`对象通常并不直观...
然而,JavaScript没有内置的函数来直接实现复杂的日期格式化,所以通常需要自定义函数或者使用第三方库,如moment.js或date-fns。 以下是一个简单的自定义格式化时间的函数示例: ```javascript function ...
总的来说,JavaScript中的日期操作并不复杂,但需要理解`Date`对象的方法和日期格式化的原理。通过上述方法,你可以轻松地对日期进行加减运算,并将其格式化为所需的样式。在实际开发中,还可以根据需求扩展功能,...
# js代码-13位时间戳转换时间格式 此项目提供了一个JavaScript函数,用于将13位时间戳转换为易读的日期和时间格式。具体使用方法如下: 1. 引入`main.js`文件到你的项目。 2. 调用`timestampToDate`函数,并传入13...
在JavaScript(JS)编程中,时间戳转换和Unicode编码转换是常见的操作。下面将详细讲解这两个主题,并结合HTML和CSS的基础知识,探讨它们在实际应用中的使用。 **一、JavaScript时间戳转换** 1. **时间戳的概念**...
在JavaScript中,日期转换是一个常用的功能,特别是将时间戳(通常是自1970年1月1日以来的毫秒数)转换为可读的日期格式。上述内容提供了实现这一功能的代码,下面将详细解释其中的知识点: 首先,我们看到一个...
3. **时间转换算法**:从GMT转换到北京时间,主要涉及到加减时区差。例如,如果格林威治时间是00:00,那么北京时间就是当天的08:00。 4. **编程实现**:在描述中提到的工程可以直接运行,意味着可能有一个程序或...
在JavaScript和Vue.js中,日期格式化是一种常见的需求,它帮助我们把日期对象转换成易于阅读的字符串形式。Vue.js提供了自定义过滤器(filter)的功能,让我们能够方便地处理和展示数据,包括日期格式化。以下是一个...
假设有一个日期字符串`'201103031135'`,我们可以先将其转换为日期格式,再转换为Unix时间戳: ```sql -- 先转换为日期格式 SELECT STR_TO_DATE('201103031135', '%Y%m%d%H%i'); -- 再转换为Unix时间戳 SELECT UNIX...
在IT行业中,日期和时间的处理是至关重要的,尤其是在JavaScript这样的客户端和服务器端都广泛使用的编程语言中。"DateHelper"是一个专门针对日期和时间戳转换的库,它支持在浏览器环境和Node.js环境中使用,这使得...
对于更复杂的日期格式化,可以使用`toLocaleDateString()`和`toLocaleTimeString()`,或者引入库如`moment.js`,`date-fns`等,它们提供了丰富的日期格式化选项。 7. **自定义转换函数**: 你可以编写自己的函数...
对于提供的"UTC2GMT"工具,很可能是一个简单的命令行程序或者网页应用,用户输入时间后,程序会自动进行UTC到GMT的转换。这种工具在处理跨时区通信或者需要统一时间表示的场景下非常有用。 总的来说,理解并正确...
这些数据类型提供了丰富的功能,包括日期和时间的创建、格式化、解析以及与时间戳的转换。 2. **时间戳转换为日期**: 时间戳转换成日期需要使用编程语言提供的函数。例如,在Python中,可以使用`datetime....
这个文档主要介绍了一些用于日期时间格式验证和比较的JavaScript扩展方法。以下是对这些方法的详细解释: 1. **isLeapYear()**: 这个方法用于判断一个年份是否为闰年。根据闰年的规则,如果年份能被4整除但不能被...
在JavaScript中,我们经常会遇到需要处理日期格式的情况,尤其是在表单验证、时间范围筛选等应用场景中。本文主要介绍如何将不同格式的字符串转换为日期对象,并进行日期之间的比较。 #### 一、字符串格式:...
在JavaScript中,时间戳和日期格式之间的转换是非常常见的操作,尤其在处理用户界面显示和数据存储时。本文将详细介绍如何在JavaScript中进行这两种转换。 首先,时间戳是一个表示特定日期和时间的数字,通常以毫秒...
而标准日期则按照特定格式显示日期和时间,如"YYYY-MM-DD HH:MM:SS"。 ### 1. 时间戳转换为标准日期 在JavaScript中,你可以使用`Date`对象来完成这个转换。以下是一个简单的例子: ```javascript function ...
总的来说,JavaScript中的日期格式化涉及到多个内置方法和可能的扩展,开发者可以根据具体需求选择合适的方式来处理和展示日期。在实际项目中,使用成熟的日期库通常能提供更强大、更灵活的功能,同时也更易于维护。