javascript - 按 cookie 中的数据对 JSON 响应进行排序

标签 javascript jquery json

我有一个名为产品的表

ProudctID   ProductName
1           A
2           B
3           C
4           D

我想使用 javascript 对产品进行排序。所以我所做的是...

var visits= [
   { 'ProudctID' : 4 }
];
$.cookie("visit", JSON.stringify(visits));

在每个产品 View 上我都这样做

var visits= $.parseJSON($.cookie("visits");)
visits.push(
    { 'ProudctID' : 1}
);
$.cookie("visit", JSON.stringify(visits));

我有所有产品的 JSON 结果,那么我如何根据 cookie 中存储的内容按 ProductID 对产品进行排序..

最佳答案

您的visits变量引用一个数组。两种选择供您选择:

  1. 数组有这个方便的 sort method 。 ;-) 它接受一个函数来比较数组中的项目。因此,只需在添加项目后使用sort即可。

  2. 不要使用 push,而是循环遍历数组以查找新条目的正确位置,然后使用 splice将其放在正确的位置。 (就像插入排序一样。)然后数组总是排序的。

由于数组是一流的 JSON 概念,因此在排序和恢复时将保持顺序。

关于javascript - 按 cookie 中的数据对 JSON 响应进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14932932/

相关文章:

javascript - 制作高阶组件以与 TypeScript 互操作 react-relay 和 react-router

javascript - h4 标签后的 jquery load()

jquery - 以编程方式重置 jquery tablesorter 上的过滤器

ios - 从事件数组中按日期将 UITableView 分类为多个部分

javascript - 无需 JSONP 或 CORS 即可获取跨域 XML 文件

json - 在 Windows 8 中将数据写入文本文件

javascript - 在 Django 模板中使用 javascript 重定向尝试 - 产生无效的 url

javascript - JS toLowerCase() 不起作用

javascript - fetch() 在按钮上的事件监听器激活之前被触发 - Chuck Norris API

javascript - 是否可以使用 HttpRequest 上传 <div> 标记中包含的文件