Javascript dd-mm-yyyy 日期格式

Javascript dd-mm-yyyy date format

我使用 st-table of angular js。其中一列包含日期信息,格式必须为 dd-mm-yyyy。我找到了一些方法来转换它;

new Date(year,month,day).toLocaleDateString('en-US')

但是,在那种情况下,它被转换为字符串,当我通过单击它对列进行排序时,因为它是字符串,所以任何日期的第一个在它升序时排在第一位,反之亦然,因此它必须是日期不是字符串

由于您使用的是 angular,“Angular 方式”将是使用 Angular 的 date filter。格式字符串是标准的,并且已记录在案在那里,但我已经提供了您要查找的格式。

你在问题中显示了一个小写 'm';请注意,那是分钟,而不是月。

HTML边

{{ yourDateObj | date:'dd-MM-yyyy' }}

控制器/JS端:

$filter('date')(yourDateObj,'dd-MM-yyyy')

智能电网详情

综上所述,重新阅读您的问题让我感到疑惑。我确实找到了一个 plnkr here from the smart-table site,它表明该值应该是一个日期,而不是一个字符串。他们使用的代码确实在 HTML 端使用了 angular 过滤器。提供的数据数组利用日期对象。在这种情况下,您应该像您提到的那样使用 new Date(year,month,day) 提供该日期,但不调用 .toLocaleDateString() (或任何其他方法)。