【问题标题】:convert timestamp into a particular format?将时间戳转换为特定格式?
【发布时间】:2020-04-12 18:15:28
【问题描述】:

我想将时间戳转换成这种格式20 dec 2019 10:10 AM。 我有一个对象数组,所以我已经实现了这个代码

var data =[
  {
    report: 'xyz',
    office: 'ccc.xbx',
    timestamp: 1576023365640,
    officeId: 'ttttttt',
    month: 3,
    year: 2019
  },
  {
    report: 'yyy',
    totalUsers: 1288,
    office: 'yyyy.in',
    timestamp: 1576023365640,
    officeId: 'prfzIYlOkAw3gqc03yszttffffdddaq',
    date: 24,
    month: 10,
    year: 2019
  },
  {
    report: 'xyz',
    office: 'ccc.xbx',
    timestamp: 1576023365640,
    officeId: 'DZxUwW9TzbwCYNclYLgE',
    month: 3,
    year: 2019
  },
  {
    report: 'xyz',
    office: 'ccc.xbx',
    timestamp: 1576023365640,
    officeId: 'DZxUwW9TzbwCYNclYLgE',
    month: 3,
    year: 2019
  }
]
data.forEach(function(itm) {
    itm.timestamp = moment(itm.timestamp).format("LLL");
    console.log(itm);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

特定时间戳的这种格式的预期输出

20 dec 2019 10:10 AM

【问题讨论】:

  • moment(+itm.timestamp).format("LLL");不要使用字符串时间戳,必须是int,输出格式December 11, 2019 5:46 AM
  • 只需使用.format('DD MMM YYYY hh:mm A')
  • @siddhantsankhe——时间戳一个数字。它不必是整数。
  • @RobG 在编辑此问题之前,时间戳存储为string,其格式将为"Invalid Date"

标签: javascript date timestamp


【解决方案1】:

修改以下代码:

itm.timestamp = moment(+itm.timestamp).format("DD MMM YYYY hh:mm A");

+ 符号将string 转换为integer,然后可以将其传递给moment()。然后使用format()根据您的要求安排输出。

完整的解决方案片段:

var data =[
  {
    report: 'xyz',
    office: 'ccc.xbx',
    timestamp: '1576023365640',
    officeId: 'ttttttt',
    month: 3,
    year: 2019
  },
  {
    report: 'yyy',
    totalUsers: 1288,
    office: 'yyyy.in',
    timestamp: '1576023365640',
    officeId: 'prfzIYlOkAw3gqc03yszttffffdddaq',
    date: 24,
    month: 10,
    year: 2019
  },
  {
    report: 'xyz',
    office: 'ccc.xbx',
    timestamp: '1576023365640',
    officeId: 'DZxUwW9TzbwCYNclYLgE',
    month: 3,
    year: 2019
  },
  {
    report: 'xyz',
    office: 'ccc.xbx',
    timestamp: '1576023365640',
    officeId: 'DZxUwW9TzbwCYNclYLgE',
    month: 3,
    year: 2019
  }
]
data.forEach(function(itm) {
    itm.timestamp = moment(+itm.timestamp).format("DD MMM YYYY hh:mm A");
    console.log(itm);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

【讨论】:

  • 格式应为“DD MMM YYYY hh:mm A”。 HH 是 24 小时,MM 是两位数的月份。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-18
  • 1970-01-01
  • 2016-03-08
  • 2015-09-08
  • 2016-11-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多