javascript - 比较数组和对象的值,如果为真,则将它们保存到另一个对象
问题描述
我正在寻找比较两个数组并根据真实的信息和比较创建一个新对象,我在下面解释。
我的目标是获取我保存在代码数组中的代码并将其与imagesCode.code 对象进行比较,如果它们相同,我将获取代码。标题和代码.rgb1将其传递给imagesCode.title 和 imagesCode.rgb , 所以 II 可以把这个新对象完全归还使用
获取图像对象
const colors = 'http://api.evoximages.com/api/v1/vehicles/';
const urlsColors = res.data.data[0]["urls"];
try {
colorList = await axios.get(colors);
let codes = [];
let codesLength = 0;
let imagesCode = {
code,
url,
title,
rgb
};
for (let i = 0; i < colorList.data.data.colors.length; i++) {
codesLength = colorList.data.data.colors[0].code.length;
codes.push(colorList.data.data.colors[i]);
imagesCode.code = urlsColors[i].substr(-4 - codesLength, codesLength);
imagesCode.url = urlsColors[i];
}
for (var j = 0; j < imagesCode.length; j++) {
if (imagesCode.code == codes[j].code) {
imagesCode.title = codes[j].title;
imagesCode.rgb = codes[j].rgb1;
} else {
console.log("something wrong");
}
}
} catch (error) {
return error;
}
第一个他不保存对象内部的元素,我不是很熟悉,我只是尝试过,第二个他是检查和比较代码,如果它们是真的我会通过titles和rgb,但是我又失败了
代码数组示例:
[{
vifnum: 12930,
code: 'GPJ',
title: 'Cajun Red Tintcoat',
simpletitle: 'Red',
rgb1: '86090C',
rgb2: null,
shotin: 1,
id: 5099113
},
{
vifnum: 12930,
code: 'G1W',
title: 'Iridescent Pearl Tricoat',
simpletitle: 'White',
rgb1: 'E8E8EE',
rgb2: null,
shotin: 0,
id: 5099114
},
{
vifnum: 12930,
code: 'G8U',
title: 'Ivy Metallic',
simpletitle: 'Green',
rgb1: '0C321D',
rgb2: null,
shotin: 0,
id: 5099115
},
{
vifnum: 12930,
code: 'GD1',
title: 'Kinetic Blue Metallic',
simpletitle: 'Blue',
rgb1: '223968',
rgb2: null,
shotin: 0,
id: 5099116
},
{
vifnum: 12930,
code: 'GB8',
title: 'Mosaic Black Metallic',
simpletitle: 'Black',
rgb1: '060606',
rgb2: null,
shotin: 0,
id: 5099117
}
]
imagesCode 数组示例:
['G1W', 'G8U', 'GB8', 'GD1', 'GPJ']
解决方案
const results = ImagesCodes.map((code) => ({
code,
title: ObjCodes.find((item) => item.code === code)?.title
}));
推荐阅读
- javascript - 如何对我的 Active Directory 查询进行单元测试?
- php - 从子类别中获取所有父母
- android - 在 baseFragment 中使用 T,将导致使用该函数需要“Nothing”而不是 Fragment
- c++ - 如何正确删除 std::string 数组
- ios - 从数组中设置 uilabel 集合的文本
- react-native - React-Native,JustifyContent:flex-end 和 space-around 行为奇怪
- javascript - “材料表” - 有没有办法将过滤与表格分开。- ReactJs
- mysql - MySQL:获取每一行的总数,然后获取每个“分组依据”的总数
- bash - 减去时间戳时意外标记“/”附近的语法错误
- string - 数据库连接字符串参数污染强化问题