我有一个名为products
的表ProudctID ProductName
1 A
2 B
3 C
4 D
我想使用javascript对产品进行排序。所以我做的是......
var visits= [
{ 'ProudctID' : 4 }
];
$.cookie("visit", JSON.stringify(visits));
在我正在做的每个产品视图
var visits= $.parseJSON($.cookie("visits");)
visits.push(
{ 'ProudctID' : 1}
);
$.cookie("visit", JSON.stringify(visits));
我拥有所有产品的JSON结果,因此我如何根据Cookie中存储的内容对ProductID进行排序..
答案 0 :(得分:2)
您的visits
变量是指数组。有两种选择:
阵列有这个方便sort
method。 ;-)它接受一个用于比较数组中项目的函数。因此,请在添加商品后使用sort
。
而不是push
,循环遍历数组以找到新条目的正确位置,然后使用splice
将其放在正确的位置。 (就像插入排序一样。)然后数组总是排序。
因为数组是一流的JSON概念,所以在被加标和恢复时会保持顺序。
答案 1 :(得分:2)
最简单的方法是不存储对象,只存储ID本身的数组。
var visits= $.parseJSON($.cookie("visits");)
visits.push( /* value */);
visits.sort();
$.cookie("visit", JSON.stringify(visits));