• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

jQuery 按照数组内对象的某个属性去重

武飞扬头像
Senora
帮助1

按照数组内的 tel 去重。
json.tel 可换成 name 或 num 即按照 name 或 num去重。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js"></script>
	</head>
	<body>
		<script type="text/javascript">
			var data = [{
					name: "第一条",
					num: 1,
					ModifiedTime: "2021-09-27 11:09:55",
					json: {
						tel: 15873829898,
						name: "zhao"
					}
				},
				{
					name: "第二条数据",
					num: 2,
					ModifiedTime: "2021-09-28 13:09:55",
					json: {
						tel: 13158738266,
						name: "qian"
					}
				},
				{
					name: "三条数据",
					num: 2,
					ModifiedTime: "2021-09-28 11:09:55",
					json: {
						tel: 18176628778,
						name: "sun"
					}
				},
				{
					name: "三条数据",
					num: 5,
					ModifiedTime: "2021-09-28 18:09:55",
					json: {
						tel: 13158738266,
						name: "li"
					},
					// 被删除的数据
				}
			]
			$("#oldArr").text(JSON.stringify(data));
			console.log(data);
			const res = new Map();
			var newArr = data.filter(function(val, index, arr) {
				if (res.has(val.json.tel)) {
					for (var i = 0; i < arr.length; i  ) {
						var obj = arr[i];
						// 按照对象里的唯一标识 tel去重
						if (obj.json.tel === val.json.tel) {
							arr[i] = obj;
							break;
						}
					}
					return false;
				} else {
					res.set(val.json.tel, 1);
					return true;
				}
			});
			console.log(newArr);
		</script>
	</body>
</html>

学新通

去重前的数据:
学新通
去重后的数据:
学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhifbcfk
系列文章
更多 icon
同类精品
更多 icon
继续加载