我有一个这样的数组:
let data = ['week1_aopCrop', 'week1_actCrop', 'week2_aopCrop', 'week2_actCrop']
输出应该是:
['week1', 'week2']
有人能帮忙吗?谢谢
1(使用reduce
和Set
作为可以很容易地获得结果
let data = ["week1_aopCrop", "week1_actCrop", "week2_aopCrop", "week2_actCrop"];
const result = [...data.reduce((acc, curr) => {
acc.add(curr.split("_")[0]);
return acc;
}, new Set()),
];
console.log(result);
2(您也可以在此处使用map
作为:
let data = ["week1_aopCrop", "week1_actCrop", "week2_aopCrop", "week2_actCrop"];
const result = [...new Set(data.map((s) => s.split("_")[0]))];
console.log(result);
使用每个
let data = ['week1_aopCrop', 'week1_actCrop', 'week2_aopCrop', 'week2_actCrop'];
let out = [];
data.forEach((item,index)=>{
if(!out.includes(item.split("_")[0])) {
out.push(item.split("_")[0]);
}
});
console.log(out);