javascript - 按 bool 值和标题对 JSON 进行排序

标签 javascript json ajax sorting

所以我有一个由 ajax 返回的 JSON 对象,我需要首先按元值 1 和 0 排序,然后按标题排序,将 1 保留在顶部。所以本质上我需要按 custom_fields['visitor_bureau'] 然后按标题对所有内容进行排序。我已经尝试了几乎所有我能做的事情,包括在各处搜索不同的排序函数,以更好地了解如何编写此代码,但似乎无法正确执行。

我使用 JSON.stringify() 使对象成为字符串。这实际上是一个巨大的 JSON 对象,但我只需要 2 个字段来排序。 Visitor_bureau 是 bool 值,标题实际上可以是任何字符串。这是一个可怕的描述,但我在这里已经脑死亡了。

{"title":"Some Place","visitor_bureau":"1"}

最佳答案

使用 sort() 就可以了方法:

let array = [{
  "title": "A Some Place",
  "visitor_bureau": "0"
}, {
  "title": "B Some Place",
  "visitor_bureau": "1"
}, {
  "title": "C Some Place",
  "visitor_bureau": "1"
}];

array.sort((a, b) => b.visitor_bureau - a.visitor_bureau || a.title.localeCompare(b.title));

console.log(array)

关于javascript - 按 bool 值和标题对 JSON 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42079931/

相关文章:

javascript - 从 HTML 输入中检索多个值并存储在 JSON 键、值 [Array] 中

javascript - JSON.parse 正在从 JSON 对象中删除 2 个对象

javascript - 具有多个嵌套 IIFE 的函数作用域

javascript - `this` 引用在原型(prototype)链中丢失

javascript - 从嵌套数组创建 HTML 元素

ajax - 我如何删除 ?_escaped_fragment_= 使用 .htaccess

python - 在 Google App Engine 中创建表单自动完成

javascript - 为什么我的状态在使用 setState 的单击事件时没有改变

java - 我应该如何使用 Jackson 将 JSON(其键之一包含数组结构)解析为对象?

c# - 在 AJAX 成功函数中解析返回的 C# 列表