笔记,项目中做数据排序,根据数组对象中某个值相等排序。

	groupBy: (array, f) => {
		debugger
		//拿到未被处理的值
		var groups = {};
		//讲未被处理的值循坏。
		array.forEach(function (orderNo) {
		//这里f是下面穿过来的方法,做了一个返回数组中一个对象的值,后面用于做新数组的key。
			var group = JSON.stringify(f(orderNo));
			//groups是新对象,group是数组key,=新数组值,当为空是等于空。这里也就是新建个带key的空数组,下面做push
			groups[group] = groups[group] || [];
			//将数组push到新数组中
			groups[group].push(orderNo);
		});
		//这里做的是将带key的对象数组中的每个数组return出去,因为下面处理不需要key了,所以把每个key中的数组return出去,下面获取到的就是没有key值的数组,便于循环处理。
		return Object.keys(groups).map(function (group) {
			return groups[group];
		});
	},
	/* 分组效果处理 */
	getCombination: (req, data) => {
		debugger
		console.log(req, data);
		var list = inpAuditTableInfoPageModel.groupBy(req, function (item) {
			return [item.orderNo];
		});
		// data.push(list);
		$.each(list, function (id, node1) {
			let count = 1;
			$.each(node1, function (id, list1) {

				if (node1.length > 1) {
					if (count == 1) {
						list1.combination = 1;
					} else if (count == node1.length) {
						list1.combination = 3;
					} else {
						list1.combination = 2;
					}
					count = count + 1;
				} else {
					list1.combination = 4;
				}
				data.push(list1);
			});
		});

	},

这是list的值:
这个是list的值

本文章是做笔记用的。要结合项目中的东西看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值