【发布时间】:2017-04-20 22:03:35
【问题描述】:
我想知道如何根据每个对象中是否存在属性来使用数组。这是从后端返回的内容,只有一个具有 something 字段,并且只有一个具有其 isActive 属性的 false 值。
我需要一个或多个具有 some 属性排序到数组顶部的一个或一个,其次,所有 isActive 属性值为 true 的都排在具有 false 的之前。
所以这个
var obj = [
{
"_id": "58f8ffe7ce2bbf01c6164802",
"isActive": false
},
{
"_id": "58f8ffe7ce2bbf01c6164803",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164804",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164801",
"isActive": true,
{ "something": "xyz" }
},
{
"_id": "58f8ffe7ce2bbf01c6164806",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164807",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164808",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164809",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164810",
"isActive": true
}
]
会变成
var obj = [
{
"_id": "58f8ffe7ce2bbf01c6164801",
"isActive": true,
{ "something": "xyz" }
},
{
"_id": "58f8ffe7ce2bbf01c6164803",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164804",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164806",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164807",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164808",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164809",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164810",
"isActive": true
},
{
"_id": "58f8ffe7ce2bbf01c6164802",
"isActive": false
},
]
两种不同类型的搜索和匹配,然后是array.push?像 lodash 这样的助手是否实用,使用 jQuery 会更容易还是可以简单地使用 vanilla js 来完成?
【问题讨论】:
-
"something" 道具周围的括号使其无效
标签: javascript jquery arrays sorting