gpt4 book ai didi

angularjs - 在 AngularJS 中转换 JSON 日期

转载 作者:行者123 更新时间:2023-12-01 13:47:16 26 4
gpt4 key购买 nike

我想转换从 JSON 字符串中检索到的日期并将它们格式化为 yyyy-MM-dd。我正在使用下面的代码来格式化我的日期,但奇怪的是,当 JSON 字符串例如为“created_at”时,日期返回“12-31-1969”:“2016-01-26T09:52:31Z”因此正确的字符串将是 01-26-2016 而不是 12-31-1969。

HTML:

<li class="mark">Created:</li>
<li class="mark"> {{item.created_at | jsonDate : 'MM-dd-yyyy' }}"</li>
<li class="mark">Updated:</li>
<li class="mark"> {{item.updated_at | jsonDate : 'MM-dd-yyyy'}}</li>

过滤器:

 defaultPage.filter('jsonDate', ['$filter', function ($filter) {
return function (input, format) {
return (input) ? $filter('date')(parseInt(input.substr(6)), format) : '';
};
}]);

最佳答案

parseInt(input.substr(6)) 是不必要的。来自 the documentation ,过滤器函数的 date 参数描述为:

Date to format either as Date object, milliseconds (string or number) or various ISO 8601 datetime string formats (e.g. yyyy-MM-ddTHH:mm:ss.sssZ and its shorter versions like yyyy-MM-ddTHH:mmZ, yyyy-MM-dd or yyyyMMddTHHmmssZ). If no timezone is specified in the string input, the time is considered to be in the local timezone.

在你的例子中,它是 ISO 8601 字符串格式,所以你的过滤器行可以是:

return (input) ? $filter('date')(input, format) : '';

这是一个显示它工作的 fiddle :https://jsfiddle.net/ezj2kefL/1/

关于angularjs - 在 AngularJS 中转换 JSON 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35017171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com