Lodash是一个一致性、模块化、高性能的 JavaScript 实用工具库。
官网地址:https://www.lodashjs.com/
var _ = require('lodash');
代码贴上:
let dataList = [];
let arrMapList = [],mapObj = {};
_.each(dataList, (item,index) => {
if(!mapObj[item.id+'']&&item.parentId===0){//挑出父级,根据不同的父级对象创建数组;
arrMapList.push({
...item, //对象中的扩展运算符(...)用于取出参数对象中的所有可遍历属性,拷贝到当前对象之中
wordsner:[]
});
mapObj[item.id+''] = item;
}else{
//如果不是父级,就把对应的子级添加到父级
_.each(arrMapList,(obj,index) => {
if(obj.id == item.parentId){
obj.wordsner.push(item);
}
})
}
})
以上是把一维数组转化成二维数组,可以用以上方法转化三位数组
$.extend()用法 (我的理解就是合并两个对象)
varobj={};
varobj1={
name:'hunger',
sex:'man'
};
varobj2={
name:'valley',
age:30
}
//$.extend(obj,obj1) //把obj1拷贝到obj上面
$.extend(obj,obj1,obj2)//属性会覆盖 Object {name: "valley", sex: "man", age: 30}
摘自:https://blog.csdn.net/alsdiuhfeircn/article/details/96132167
concat()的使用方法
concat() 方法用于连接两个或多个数组。
该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
arrayObject.concat(arrayX,arrayX,......,arrayX)
必需。该参数可以是具体的值,也可以是数组对象。可以是任意多个。
返回一个新的数组。该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的。
如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组。