Moment JS未将日期转换为所需格式

时间:2018-10-30 12:26:29

标签: javascript arrays object momentjs

我有这些物品:

[ 
  { id: '1', name: 'sam', entryTime: 2018-10-30T10:48:29.286Z }, 
  { id: '2', name: 'john', entryTime: 2018-10-30T11:37:23.874Z } 
]

我的预期输出:

[ 
  { id: '1', name: 'sam', entryTime: 30 Oct 2018 }, 
  { id: '2', name: 'john', entryTime: 30 Oct 2018 } 
]

这是我尝试过的:

const visitors = [..that above array]

visitors.map(index => index.entryTime = moment(index.entryTime).format('D MMM YYYY'));

在我的对象中获取无效的日期。

3 个答案:

答案 0 :(得分:0)

将其转换为日期对象,您的日期还包含时间。 (日期和时间用大写字母T隔开)。

 var visitors  = [ 
      { id: '1', name: 'sam', entryTime: '2018-10-30T10:48:29.286Z' }, 
      { id: '2', name: 'john', entryTime: '2018-10-30T11:37:23.874Z' } 
    ];

    visitors.map(index => index.entryTime = moment(new Date(index.entryTime)).format('Do MMM YY'));

答案 1 :(得分:0)

实际上我的代码有效,它可以解决ORM原始数据问题。

visitors.map(index => index.entryTime = moment(index.entryTime).format('D MMM YYYY'));

答案 2 :(得分:-1)

尝试将日期转换为字符串以特定格式。

var d = "2018-10-30T10:48:29.286Z";
var output = moment(d,'DD MMM YYYY');