<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>demo </title>
</head>
<body>
<script>
let nums = [1, 2, 3, 4, 5, 6, 2, 3, 4];
let target = 5;
function addNums(nums, target) {
let res = {};
let arr = []
for (let i = 0; i < nums.length; i++) {
for (let j = i + 1; j < nums.length; j++) {
if (nums[j] == target - nums[i]) {
arr.push([i, j])
}
}
}
return arr
}
console.log(addNums(nums, target));
let arr = [{
id: 1,
color: 'yellow'
}, {
id: 2,
color: 'purple'
}, {
id: 3,
color: 'black'
}, {
id: 4,
color: 'red'
}, {
id: 5,
color: 'pink'
}, {
id: 6,
color: 'orange'
}, {
id: 7,
color: 'orange'
}, {
id: 8,
color: 'blue'
}];
function orderByColor(objList) {
let rainbowObj = [];
let somes = []
const rainBowOrder = ['red', 'orange', 'yellow', 'green', 'blue', 'navy', 'purple']
console.log(arr, '--');
rainBowOrder.forEach(ele => {
objList.forEach(element => {
if (ele == element.color) {
rainbowObj.push(element)
} else {
let index = rainBowOrder.findIndex(e =>
element.color == e
)
if (index == -1) {
let eleFindindex = somes.findIndex(eleFind => eleFind.id == element.id)
if (eleFindindex == -1) {
somes.push(element)
}
}
}
});
});
console.log(somes);
rainbowObj = [...rainbowObj, ...somes]
return rainbowObj
}
console.log(orderByColor(arr));
</script>
</body>
</html>