首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用NodeJS将UTC日期格式化为``YYYY mm-DD hh:mm:ss`字符串?

如何使用NodeJS将UTC日期格式化为``YYYY mm-DD hh:mm:ss`字符串?
EN

Stack Overflow用户
提问于 2012-05-18 10:27:30
回答 17查看 619.8K关注 0票数 310

使用NodeJS,我想格式化一个

转换为以下字符串格式:

代码语言:javascript
复制
var ts_hms = new Date(UTC);
ts_hms.format("%Y-%m-%d %H:%M:%S");

我该怎么做呢?

EN

回答 17

Stack Overflow用户

回答已采纳

发布于 2012-11-04 22:57:22

如果你使用的是Node.js,你肯定会有EcmaScript 5,所以Date有一个

方法。您正在请求对ISO8601进行细微的修改:

代码语言:javascript
复制
new Date().toISOString()
> '2012-11-04T14:51:06.157Z'

所以只要去掉一些东西,你就准备好了:

代码语言:javascript
复制
new Date().toISOString().
  replace(/T/, ' ').      // replace T with a space
  replace(/\..+/, '')     // delete the dot and everything after
> '2012-11-04 14:55:45'

或者,在一行代码中:

ISO8601必须是UTC (也由第一个结果中的Z表示),所以默认情况下会得到UTC (这总是一件好事)。

票数 653
EN

Stack Overflow用户

发布于 2013-08-29 18:50:22

有一个用于转换的库:

代码语言:javascript
复制
npm install dateformat

然后写下你的需求:

代码语言:javascript
复制
var dateFormat = require('dateformat');

然后绑定值:

代码语言:javascript
复制
var day=dateFormat(new Date(), "yyyy-mm-dd h:MM:ss");

请参见

日期格式

票数 81
EN

Stack Overflow用户

发布于 2012-05-18 13:41:14

一般来说,我并不反对图书馆。在这种情况下,通用库似乎有点过头了,除非应用程序进程的其他部分日期很长。

编写像这样的小实用函数对于初学者和熟练程序员来说都是一种有用的练习,对于我们中的新手来说也是一种学习经验。

代码语言:javascript
复制
function dateFormat (date, fstr, utc) {
  utc = utc ? 'getUTC' : 'get';
  return fstr.replace (/%[YmdHMS]/g, function (m) {
    switch (m) {
    case '%Y': return date[utc + 'FullYear'] (); // no leading zeros required
    case '%m': m = 1 + date[utc + 'Month'] (); break;
    case '%d': m = date[utc + 'Date'] (); break;
    case '%H': m = date[utc + 'Hours'] (); break;
    case '%M': m = date[utc + 'Minutes'] (); break;
    case '%S': m = date[utc + 'Seconds'] (); break;
    default: return m.slice (1); // unknown code, remove %
    }
    // add leading zero if required
    return ('0' + m).slice (-2);
  });
}

/* dateFormat (new Date (), "%Y-%m-%d %H:%M:%S", true) returns 
   "2012-05-18 05:37:21"  */
票数 49
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10645994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档