标题常用数组处理方法
根据id匹配出对应的name
let multiId = [1, 4];
let multiList = [{
id: 1,
name: "title1"
}, {
id: 2,
name: "title2"
}, {
id: 3,
name: "title3"
}, {
id: 4,
name: "title4"
}];
let filterMultiName = '';
if (Array.isArray(multiId) && multiId.length > 0) {
filterMultiName = multiList.filter((item) => multiId.includes(item.id)).map((item) => item.name).join();
//==>'title1,title4'
}
数组中删除某些值
const array = [1, 2, 9, 3, 8, 4, 5];
const valuesToRemove = [9, 8];
const filteredArray = array.filter(item => !valuesToRemove.includes(item));
筛选满足条件的数组对象
let AllOptions = [{
id: 1,
name: "书本一"
}, {
id: 2,
name: "书本二"
}, {
id: 3,
name: "书本三"
}, {
id: 4,
name: "书本四"
}]
let selectIds = [2, 1];
let selectList = AllOptions.filter(item => selectIds.includes(item.id)); //选中的数组
let unSelectList = AllOptions.filter(item => !selectIds.includes(item.id)); //未选中的数组
数组对象去重
let list = [{
id: "1",
name: "测试1"
}, {
id: "2",
name: "测试2"
}, {
id: "2",
name: "测试3"
}];
function removeRepeat(arr) {
let map = new Map();
for (let i of arr) {
if (!map.has(i.id)) {
map.set(i.id, i)
}
}
arr = [...map.values()];
return arr;
}
let newArr = removeRepeat(list);
数组删除最后一位,删除第一位;
//数组删除最后一位,删除第一位;
let originArr = [1,2,3,4,5,6];
//删除最后一位不改变原数组
let newArrT = originArr.slice(0,-1); //==>[1, 2, 3, 4, 5]
//删除第一位不改变原数组
let newArrS = originArr.slice(1); // ==> [2, 3, 4, 5, 6]
//删除第一位和最后一位
let newArrM = originArr.slice(1,originArr.length - 1); // ==> [2, 3, 4, 5]
持续更新中,欢迎各位评论追加…