Lodash是一個一致性撮慨、模塊化、高性能的 JavaScript 實用工具庫。
官網(wǎng)地址:https://www.lodashjs.com/
var?_?=?require('lodash');
代碼貼上:
? ? ? ? ? ? let dataList = [];
? ? ? ? ? ? let arrMapList = [],mapObj = {};
? ? ? ? ? ? ? _.each(dataList, (item,index) => {
? ? ? ? ? ? ? ? if(!mapObj[item.id+'']&&item.parentId===0){//挑出父級甫煞,根據(jù)不同的父級對象創(chuàng)建數(shù)組菇曲;
? ? ? ? ? ? ? ? ? ? ? arrMapList.push({
? ? ? ? ? ? ? ? ? ? ? ? ...item,? ? ? ? ? ? ? ? ? ? ? ? ? ? //對象中的擴(kuò)展運算符(...)用于取出參數(shù)對象中的所有可遍歷屬性冠绢,拷貝到當(dāng)前對象之中
? ? ? ? ? ? ? ? ? ? ? ? wordsner:[]
? ? ? ? ? ? ? ? ? ? });
? ? ? ? ? ? ? ? ? ? mapObj[item.id+''] = item;
? ? ? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? ? //如果不是父級抚吠,就把對應(yīng)的子級添加到父級
? ? ? ? ? ? ? ? ? _.each(arrMapList,(obj,index) => {
? ? ? ? ? ? ? ? ? ? if(obj.id == item.parentId){
? ? ? ? ? ? ? ? ? ? ? obj.wordsner.push(item);
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? })
? ? ? ? ? ? ? ? }
? ? ? ? ? ? })
以上是把一維數(shù)組轉(zhuǎn)化成二維數(shù)組,可以用以上方法轉(zhuǎn)化三位數(shù)組
$.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() 方法用于連接兩個或多個數(shù)組弟胀。
該方法不會改變現(xiàn)有的數(shù)組楷力,而僅僅會返回被連接數(shù)組的一個副本。
arrayObject.concat(arrayX,arrayX,......,arrayX)
必需孵户。該參數(shù)可以是具體的值萧朝,也可以是數(shù)組對象∠目蓿可以是任意多個检柬。
返回一個新的數(shù)組。該數(shù)組是通過把所有 arrayX 參數(shù)添加到 arrayObject 中生成的竖配。
如果要進(jìn)行 concat() 操作的參數(shù)是數(shù)組何址,那么添加的是數(shù)組中的元素,而不是數(shù)組进胯。