Javascript 比较两个对象数组中的参数
我需要比较这两个数组以得到十六进制Javascript 比较两个对象数组中的参数,javascript,reactjs,Javascript,Reactjs,我需要比较这两个数组以得到十六进制 const colours = [ {value: 2, hex: "#9EFF9C"}, {value: 4, hex: "#31FF00"}, {value: 6, hex: "#FFFF00"}, ]; const users = [ {name: 'John', value: 2}, {name: 'Adam', value: 4}, {name: 'James', value: 6}
const colours = [
{value: 2, hex: "#9EFF9C"},
{value: 4, hex: "#31FF00"},
{value: 6, hex: "#FFFF00"},
];
const users = [
{name: 'John', value: 2},
{name: 'Adam', value: 4},
{name: 'James', value: 6},
];
if(colours.value === users.value) {
// get colours.hex ...
}
例如,我需要在样式中传递十六进制参数
<h1 style={`${hexColor}`}>{user}</h1>
{user}
以下是一个示例:
const colors=[{
价值:2,
十六进制:“9EFF9C”
},
{
价值:4,
十六进制:“31FF00”
},
{
价值:6,
十六进制:“FFFF00”
},
];
常量用户=[{
姓名:'约翰',
价值:2
},
{
名字:'亚当',
价值:4
},
{
姓名:“詹姆斯”,
价值:6
},
];
users.map(user=>{
const hexColor=colors.find(color=>color.value==user.value);
返回{user.name}
})
像这样迭代:
{
users.map(user =>
<h1 style={{color: `${colours.find(f => f.value === user.value).hex}`}}>{user.name}</h1>
)
}
{
users.map(user=>
f、 value==user.value).hex}`}>{user.name}
)
}
完整来源:
const colours = [
{value: 2, hex: "#9EFF9C"},
{value: 4, hex: "#31FF00"},
{value: 6, hex: "#FFFF00"},
];
const users = [
{name: 'John', value: 2},
{name: 'Adam', value: 4},
{name: 'James', value: 6},
];
return (
<div className="App">
{
users.map(user =>
<h1 style={{color: `${colours.find(f => f.value === user.value).hex}`}}>{user.name}</h1>
)
}
</div>
);
const colors=[
{值:2,十六进制:“#9EFF9C”},
{值:4,十六进制:“#31FF00”},
{值:6,十六进制:“#FFFF00”},
];
常量用户=[
{name:'John',value:2},
{name:'Adam',值:4},
{name:'James',值:6},
];
返回(
{
users.map(user=>
f、 value==user.value).hex}`}>{user.name}
)
}
);
演示在
结果:
使用forEach循环并比较两个数组的所有对象可能重复的users.map((user,i)=>{if(user.value==colors[i].value)return{user}})感谢您的帮助:)