生成指定长度指定值的数组
Array.from({ length:指定长度}, () => '指定值')
传json格式到后端
str = "{'2/8':'1,2,3,157,158,159,160,161,162,163'},{'2/9':'4,5,6'}"
str =eval('([' + str + '])')
取父级id作为key,子集id集合作为value
getPrivilege(arr){
let data =arr.map((item)=>{
let name = item.id
if(item.children && item.children.length>0){
let val = []
item.children.map((it,inx)=>{
if(it.checked===true){
val.push(it.id)
}
})
val = val.toString()
if(val){
let obj = {[name]:val}
return { ...obj }
}
}else{
if(item.checked===true){
return {
[name]:''
}
}
}
})
data = data.filter(d=>d);
return data
},
一维数组类型
let arr = [
{id:12},
{id:11,children:[{id:112,name:'首页1'},{id:113,name:'首页1'}]},
{id:22,children:[{id:222,name:'首页2'},{id:223,name:'首页2'}]}
]
console.log('arr',arr)
let dataAll = {}
let demo =arr.map((item)=>{
if(item.children){
let val = []
item.children.map((it,inx)=>{
val.push(it.id)
})
val = val.toString()
obj = { [item.id]:val}
return obj
}
return {
[item.id]:''
}
})
let arrObj = {}
const returnedTarget = Object.assign( ...demo);
console.log('returnedTarget',returnedTarget)
js过滤两个数组相同项
let arr1 = [1, 4, 6]
let arr2 = [
{id:1,title:'test1'},
{id:2,title:'test2'},
{id:3,title:'test3'},
{id:4,title:'test4'},
{id:5,title:'test5'},
{id:6,title:'test6'}
]
let arr3 =[]
arr1.forEach((item)=>{
arr2.forEach((it)=>{
if(item === it.id){
arr3.push(it.title);
}
})
})
console.log('arr3===',arr3)