gpt4 book ai didi

javascript - Angular orderBy :'timestamp' 把东西放在错误的顺序

转载 作者:搜寻专家 更新时间:2023-11-01 04:41:17 26 4
gpt4 key购买 nike

我想做什么:

获取一个对象数组,每个对象都带有 object.timestamp(以毫秒为单位),并将它们从最新到最旧排序。

问题:

Angular 的 orderBy 似乎没有按照正确的顺序排列事物。以下时间戳按以下顺序放置:

  1. 1416187808218 - //2014 年 11 月 16 日下午 5:30
  2. 1416187881192 - //2014 年 11 月 16 日下午 5:31
  3. 1416189118263 - //2014 年 11 月 16 日下午 5:51
  4. 1416189138827 - //2014 年 11 月 16 日下午 5:52
  5. 1416130064119 - //2014 年 11 月 16 日凌晨 1:27

正确/期望的顺序显然是:

  1. 1416189138827 - //2014 年 11 月 16 日下午 5:52
  2. 1416189118263 - //2014 年 11 月 16 日下午 5:51
  3. 1416187881192 - //2014 年 11 月 16 日下午 5:31
  4. 1416187808218 - //2014 年 11 月 16 日下午 5:30
  5. 1416130064119 - //2014 年 11 月 16 日凌晨 1:27

所以它是 4, 3, 2, 1, 5 而显然应该是 1, 2, 3, 4, 5


相关代码:

html:

<div class="cardWrapper" ng-repeat="card in cards | orderBy:'timestamp'">
various child elements
</div>

javascript:

scope.cards = homeData.get().cards; // returns an array of objects
// ^this^ becomes something similar to
scope.cards = [
{text: 'some text...', timestamp: 1416189138827, other: 'data'},
{text: 'some text...', timestamp: 1416187881192, other: 'data'}
//etc...
];

最佳答案

您的时间戳是作为字符串而不是整数通过 API 传递的吗?我发现这里看起来不错。

关于javascript - Angular orderBy :'timestamp' 把东西放在错误的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26964659/

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