将两个数组合并成一个对象数组
let options = [];
let times = [30, 60, 120, 300, 420, 540, 720, 900, 1200];
let timesDesc = ["30分钟", "1小时", "2小时", "5小时", "7小时", "9小时", "12小时", "15小时", "20小时"];
options=[
{
time: 30,
timeDesc: "30分钟"
},
{
time: 60,
timeDesc: "1小时"
},
{
time: 120,
timeDesc: "2小时"
},
]
//第一种方案:
const f1 = (key, arr) => arr.map(item => ({
[key]: item
}))
const getMaxArr = (times, timesDesc) => (times.length >= timesDesc.length) ? times : timesDesc;
const mergeArr = (oldArr, arr) => oldArr.map((item, index) => ({
item,
...arr[index]
}))
let list1 = f1('times', times)
let list2 = f1('timesDesc', timesDesc)
let options = mergeArr(getMaxArr(times, timesDesc), list2)
console.log(options);
//第二种方案:
let size=times.length;
for(let i=0;i<size;i++){
let a={};
a.time=times[i];
a.timeDesc=timesDesc[i];
options.push(a);
}
console.log(options);