格式化时刻到字符串

时间:2017-10-31 10:21:23

标签: javascript angular typescript momentjs

我有一个传递给函数的时刻值,我尝试将时刻格式化为格式为 YYYY-MM-DD HH:mm (SS-ISO 8601)的字符串。日期格式准确,但省略了时间值。

代码:

Ar = [0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1];

Can somebody explain this to me?

1 个答案:

答案 0 :(得分:1)

根据the documentation

  

因此,_d的值和任何其他以_为前缀的属性不得用于任何目的。

话虽如此,我们可以解释一下发生了什么。在您的情况下,我们可以看到_i_f都已设置。 _i似乎用于存储您传递给当前的初始值。 _f看起来存储您告诉解决输入的格式。见这里:



var m = moment('2017/10/04 12:34:56', 'YYYY/MM/DD');
console.log(m._i);
console.log(m._f);
console.log(m.format('YYYY-MM-DD HH:mm'))

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.19.1/moment.min.js"></script>
&#13;
&#13;
&#13;

_i属性的设置方式相同,但记录.format('YYYY-MM-DD HH:mm')显示的是您看到的00:00。这是因为我告诉我们将其解析为YYYY/MM/DD - 您使用了YYYY-MM-DD

为了让时间有效,你需要去改变创建你的时刻对象的代码。