Javascript -最新日期和最高优先级
Javascript - Latest date and highest priority
如何识别具有最新日期和最高优先级设置的优先级元素
_同样,我正在构建一个同位素应用程序http://jsfiddle.net/CXqM2/178/
这里的键-是在更新数据之后。我想确定/选择的元素是a)最新的日期通知-所以最近- AND -有最低的通知id关联到它。
我有li元素与数据属性-看起来如下
<li class="isotope-item" data-user-notification-id="3" data-user-notification-date="24/03/2014 12:00:10">
test
</li>
- 从dom中隐藏日期和通知id
- 按最近日期排序
- 然后循环这个直到我找到最低的数字?
这是通知id
的键0 - user messaged
1 - user viewed your profile
2 - user just joined
3 - user come online
我同意Pio的评论,如果您可以在数据库中对其进行排序,请这样做。但是如果你真的需要在javascript中排序。使用排序方法
jsFiddle:http://jsfiddle.net/9GUQ3/3/
var stuff = $('ul li').sort(function (a, b)
{
var dateA = $(a).attr('data-user-notification-date').split(' ')[0];
var dateB = $(b).attr('data-user-notification-date').split(' ')[0];
var priA = $(a).attr('data-user-notification-id');
var priB = $(b).attr('data-user-notification-id');
var dString = dateA.split(' ')[0];
var dA = new Date();
dA.setYear(dString.split('/')[2]);
dA.setMonth(parseInt(dString.split('/')[1])-1);
dA.setDate(dString.split('/')[0]);
dA.setHours(0);
dA.setMinutes(0);
dA.setMilliseconds(0);
dA.setSeconds(0);
var dString = dateB.split(' ')[0];
var dB = new Date();
dB.setYear(dString.split('/')[2]);
dB.setMonth(parseInt(dString.split('/')[1])-1);
dB.setDate(dString.split('/')[0]);
dB.setHours(0);
dB.setMinutes(0);
dB.setMilliseconds(0);
dB.setSeconds(0);
if(dA.toUTCString() == dB.toUTCString())
{
return parseInt(priA) > parseInt(priB) ? 1 : -1;
} else {
return dA <= dB ? 1 : -1;
}
});
$('ul').html(stuff);
值得注意的是,这并没有考虑到小时,分钟,秒或毫秒,以更好地展示它的工作
相关文章:
- 比较从函数和生成的日期对象
- Json数据包含日期和时间格式
- Javascript日期格式类似于ISO,但本地
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 如何在JavaScript中延长当前日期
- 两位数的月份日期验证
- 更改angularjs中的日期-时间格式
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 将日期时间从json转换为可读格式
- 显示浏览量最高的三篇文章
- NodeJS日期格式不起作用
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 使用当前日期生成随机id
- 对象数组返回自最近日期以来的最高总体值
- 从数组中排除值后,获取下一个最高日期值
- 如何使 scale() 函数成为最高优先级
- 如何在Javascript中从数组中返回最低日期值和最高日期值
- 使用日期和优先级对主干进行排序
- 从数据表选定行中获取最低和最高日期值
- Javascript -最新日期和最高优先级