使用 angularjs 过滤器将 24 小时制转换为 am/pm

convert 24 hour time to am/pm using angularjs filter

我有一个值

$scope.time = 13:30:00 (in 24 hour format)

现在我想使用 angularjs 过滤器将此值更改为 am/pm 格式,例如

<th class="text-center">{{time | any filter}}</th>

输出:1:30pm

是否有任何内置过滤器或我是否必须创建自定义过滤器?
如何使用 "date" 过滤器来解决这个问题?

{{time | date:"h:mma"}}

Here 是格式。

试试看 $scope.time = 2016-03-28T13:30:00
而不是 $scope.time = 13:30:00

html 使用

{{d.date | timeDate}}

js 过滤器

app.filter('timeDate', function() {
    return function(value){
        value = new Date(value);
        return (value.getHours()>=13?(value.getHours()-12):(value.getHours())) + ":" + (value.getMinutes()<10?'0':'') + value.getMinutes() + (value.getHours()>11?'pm':'am');
    }
});

这将转换 "Fri Nov 16 12:35:42 MST 2018" 到 “下午 12:35”