js查找多维数组中的存在某个值,并全部删除

956 ℃
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
}

es6语法中怎么删除数组中指定项

js方法实现对象转url参数

php二维数组使用两种函数删除去除第一行元素

php介绍几个可以删除数组元素的函数

php利用函数删除两数组的交集

标签: 多维数组, 数组删除

上面是“js查找多维数组中的存在某个值,并全部删除”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_1501.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

中小企业网站SEO优化有哪些功能和优势?
lodop打印纵向高度自适应(小打印纸)
wordpress教程:如何在后台直接显示文章/页面/分类/标签和用户等ID号
织梦模板中dedeajax2.js导致网页无法打开的原因
帝国cms教你怎么写搜索功能