[英]Replacing array value with objects
I have this JavaScript object:我有这个 JavaScript object:
const DayOfWeek = [
{ key: 'MON', value: 'M' },
{ key: 'TUE', value: 'T' },
{ key: 'WED', value: 'W' },
{ key: 'THU', value: 'T' },
{ key: 'FRI', value: 'F' },
{ key: 'SAT', value: 'S' },
{ key: 'SUN', value: 'S' },
];
Note: If frequencyDayOfWeek is WED
replace with object { key: 'WED', value: 'W' }
注意:如果 frequencyDayOfWeek 是
WED
替换为 object { key: 'WED', value: 'W' }
let frequencyDayOfWeek = [ "WED", "THU", "FRI", "SAT" ]; frequencyDayOfWeek.map((day, index) => { //not working day.find((data, i) => { if (DayOfWeek[i].key == data) { //return match arrays of object; // [{ key: 'MON', value: 'M' }] // [{ key: 'WED', value: 'W' }] } }) });
So here is the result I want to get:所以这是我想要得到的结果:
"frequencyDayOfWeek": [
{ key: 'WED', value: 'W' },
{ key: 'THU', value: 'T' },
{ key: 'FRI', value: 'F' },
{ key: 'SAT', value: 'S' },
]
How can I implement it using JavaScript?如何使用 JavaScript 实现它?
You need to return a value from the mapping function.您需要从映射 function 返回一个值。
For example:例如:
const DayOfWeek = [ { key: 'MON', value: 'M' }, { key: 'TUE', value: 'T' }, { key: 'WED', value: 'W' }, { key: 'THU', value: 'T' }, { key: 'FRI', value: 'F' }, { key: 'SAT', value: 'S' }, { key: 'SUN', value: 'S' }, ]; let frequencyDayOfWeek = [ "WED", "THU", "FRI", "SAT" ]; const out = frequencyDayOfWeek.map(k => { // actually return a value return DayOfWeek.find(x => x.key === k); }); // or short: // const out = frequencyDayOfWeek.map(k => DayOfWeek.find(x => x.key === k)); console.log(out);
frequencyDayOfWeek.map(f => DayOfWeek.find(d => d.key === f));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.