以下是一个示例代码,展示如何按照另一个预定义的数组元素重新组织JavaScript对象数组:
// 预定义的数组元素
const predefinedOrder = ['b', 'c', 'a'];
// 原始的JavaScript对象数组
const originalArray = [
{ name: 'a', value: 1 },
{ name: 'b', value: 2 },
{ name: 'c', value: 3 },
];
// 根据预定义的数组元素重新组织对象数组的函数
function reorganizeArray(originalArray, predefinedOrder) {
// 使用map函数遍历原始数组
const reorganizedArray = predefinedOrder.map((name) => {
// 在原始数组中查找与预定义元素匹配的对象
const foundObject = originalArray.find((obj) => obj.name === name);
// 返回匹配的对象
return foundObject;
});
return reorganizedArray;
}
// 调用函数重新组织对象数组
const newArray = reorganizeArray(originalArray, predefinedOrder);
console.log(newArray);
输出结果将是重新组织后的对象数组:
[
{ name: 'b', value: 2 },
{ name: 'c', value: 3 },
{ name: 'a', value: 1 },
]
代码中的reorganizeArray
函数接受原始的JavaScript对象数组和预定义的数组元素作为参数。函数使用map
函数遍历预定义的数组元素,并在原始数组中查找与预定义元素匹配的对象。然后,将匹配的对象放入一个新的数组中,并返回该数组。最后,通过调用reorganizeArray
函数,传入原始数组和预定义的数组元素,将重新组织后的对象数组保存在newArray
变量中,并打印输出。