js数组常用方法

生成指定长度指定值的数组

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)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JS数组常用方法有很多,以下是其中的一些常用方法: 1. Array.push():向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。 2. Array.pop():删除数组的最后一个元素,并返回删除的元素。原数组改变。 3. Array.shift():删除数组的第一个元素,并返回删除的元素。原数组改变。 4. Array.unshift():向数组的开头添加一个或多个元素,并返回新的数组长度。原数组改变。 5. Array.reverse():反转数组的顺序。原数组改变。 6. Array.sort():对数组进行排序。原数组改变。 7. Array.splice():从数组中删除元素,并可以在指定位置插入新的元素。原数组改变。 8. Array.concat():合并两个或多个数组,生成一个新的数组。原数组不变。 9. Array.join():将数组的所有元素连接成一个字符串。原数组不变。 10. Array.indexOf():返回指定元素在数组中的索引,如果不存在则返回-1。 11. Array.slice():从指定位置截取数组的片段并返回新的数组。原数组不变。 12. Array.forEach():对数组的每个元素执行指定的操作。 13. Array.map():对数组的每个元素执行指定的操作,并返回一个新的数组。 14. Array.filter():根据指定的条件过滤数组的元素,并返回一个新的数组。 15. Array.every():检测数组的所有元素是否都满足指定的条件。 16. Array.some():检测数组的是否存在满足指定条件的元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值