js二维数组生成树形结构,下一级往前一级堆叠

let data = [
		[{
			label: "春上衣",
			value: "A1",
			child: []
		}, {
			label: "春裤子",
			value: "A2",
			child: []
		}, {
			label: "夏上衣",
			value: "A3",
			child: []
		}, ],
		[{
			label: "XS",
			value: "B1",
			child: []
		}, {
			label: "S",
			value: "B2",
			child: []
		}, {
			label: "M",
			value: "B3",
			child: []
		}, ],
		[{
			label: "120",
			value: "C1",
			child: []
		}, {
			label: "130",
			value: "C2",
			child: []
		}, {
			label: "140",
			value: "C3",
			child: []
		}, ],
		[{
			label: "红",
			value: "D1",
			child: []
		}, {
			label: "黄",
			value: "D2",
			child: []
		}, {
			label: "蓝",
			value: "D3",
			child: []
		}, ],
		[{
			label: "2021",
			value: "E1",
			child: []
		}, {
			label: "2022",
			value: "E2",
			child: []
		}, {
			label: "2023",
			value: "E3",
			child: []
		}, ]
	]

	function toTree(data) {
		let len = data.length - 1;
		for (let i = 0; i < len; i++) {
		 childrenDeal(data, len - i)
		}
		return data[0];
	}

	function childrenDeal(data, len) {
		data[len - 1].map(el => {
			data[len].map(el2 => {
				el.child.push(el2)
			})
		})


	}
	console.log(toTree(data))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值