今天在工作中遇见一个问题
后端返回一个数组对象 前端需要将数组对象中符合条件的一些对象放在数组对象前面去
示例如下
// 需要将数组中d不为9的对象放到数组arr1前面 举个例子 比如为6或者为7的
// 假设这是后端返回的数组对象
const arr1 = [
{ a: 1, b: 2, c: 3, d: 9 },
{ a: 1, b: 2, c: 3, d: 6 },
{ a: 1, b: 2, c: 3, d: 9 },
{ a: 1, b: 2, c: 3, d: 7 },
{ a: 1, b: 2, c: 3, d: 9 },
]
//这是需要符合的条件
const arr2 = ["6-8", "7-8"]
//demo用来装符合条件的参数
const demo = []
for (let i = 0; i < arr2.length; i++) {
demo.push(arr2[i].split("-")[0])
}
for (let j = 0; j < demo.length; j++) {
const a = arr1.map(item => item.d).indexOf(Number(demo[j]))
arr1.unshift(arr1[a])
arr1.splice(a + 1, 1)
}
console.log(arr1);