JS 将多层嵌套的数组转为一层数组

let brr = {
	dataLablesId: "147",
	dataLablesName: "888",
	dataLablesParentId: "0",
	dataLablesPath: "147.",
	dataLablesVos: [{
		dataLablesId: "148",
		dataLablesName: "8-2",
		dataLablesParentId: "147",
		dataLablesPath: "147.148.",
		dataLablesVos: [{
				dataLablesId: "149",
				dataLablesName: "8-3",
				dataLablesParentId: "148",
				dataLablesPath: "147.148.149.",
				dataLablesVos: [{
					dataLablesId: "153",
					dataLablesName: "8-4",
					dataLablesParentId: "149",
					dataLablesPath: "147.148.149.153.",
					dataLablesVos: []
				}]
			},
			{
				dataLablesId: "150",
				dataLablesName: "s ",
				dataLablesParentId: "148",
				dataLablesPath: "147.148.150.",
				dataLablesVos: []
			}
		]
	}]
}
var newArr = [] // 用于存放转换后的数组
function arrOfOneDimension(arr) {
	arr.forEach(item => {
		if(Array.isArray(item.dataLablesVos)) {
			newArr.push(item.dataLablesId)
			arrOfOneDimension(item.dataLablesVos) // // 如果还是数组继续递归调用
		}
	})
	return newArr // 148 149 150 153
}
console.log(arrOfOneDimension(brr.dataLablesVos)) // [148, 149, 150, 153]
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值