2024年08月01日 建站教程
var arr1=[{id:1, name:123, age:12},{id:2, name:1223, age:12},{id:3, name:123, age:12},{id:4, name:1223, age:12}]
function delArrVal(arr,val){
for(let i=0;i<arr.length;i++){
if(typeof arr[i].name==val){
arr.splice(i,1)
i--;
}
}
return arr;
}
delArrVal(arr1,123)
1、数据去重
function deletArrE(userInfoLS, examNo) {
let list = [...userInfoLS];
let result = [];
let obj = {};
for (let i = 0; i < list.length; i++) {
if (!obj[list[i][examNo]]) {
result.push(list[i]);
obj[list[i].examNo] = true;
}
}
return result;
}
2、根据某个相同参数合并
function getArrMerge(arr1, arr2) {
const alData = arr2.map(item => {
const data = arr1.find(i => item.examNo == i.examNo);
return {
...item,
...data
};
});
}
3、删除指定索引数组
function Arrdel(a1, a2) {
let arr = [];
a2.forEach(item => {
a1.splice(item, 1)
})
//过滤
arr = a1.filter(item => item);
return arr;
}
4、判断一个数组是否都存在于另一个数组
function isContained(a, b) {
if (!(a instanceof Array) || !(b instanceof Array)) return false;
if (a.length < b.length) return false;
var aStr = a.toString();
for (var i = 0, len = b.length; i < len; i++) {
if (aStr.indexOf(b[i]) == -1) return false;
}
return true;
}
5、单数组去重
function unique(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) == -1) {
newArr.push(arr[i])
}
}
return newArr;
}
6、拿到不同的数据
function getArrDifference(arr1, arr2) {
return arr1.concat(arr2).filter(function(v, i, arr) {
return arr.indexOf(v) === arr.lastIndexOf(v);
});
}
7、多维数组中最里面一层小部位数组改成对象
function package(data) {
data.forEach(function(item, index) {
if (item.examParts) {
var _arr = item.examParts
_arr.forEach(function(ft, index) {
for (var k in ft) {
if (item[k]) {
item[k] = item[k] + ',' + ft[k]
} else {
item[k] = ft[k]
}
}
})
delete item.examParts
}
})
return data
}
8、根据id相同合并
function merge(arr1, arr2, id) {
arr1.forEach(function(o, d) {
for (var k in o) {
arr2.forEach(function(t) {
for (var key in t) {
if (t[id] == o[id]) {
t[k] = o[k];
}
}
})
}
});
return arr2
}
本文链接:http://so.lmcjl.com/news/9688/