首页 > 编程语言 > 详细

JavaScript 经验总结【持续更新】

时间:2021-05-28 17:00:01      阅读:22      评论:0      收藏:0      [点我收藏+]

1. JS从一个数组中删除另一个数组中存在的元素

 

 let aArr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    let bArr = [1, 3, 5, 7, 9]
    aArr = aArr.filter(x => !bArr.some(e => e === x))
    console.log(aArr)  // [2, 4, 6, 8]

项目中实例:过滤下拉选项(过滤选择过的数据)

 技术分享图片

 过滤代码参考:

   /**
     * 选择下拉选项
   * params {}
*/ selectChange({ value }) { base.getitemlist(value).then(res => { this.tableData = res.content; // [data1,data2,data3,data4] this.filterEvent() // [data1,data2] }) }, /** * 过滤已添加数据 */ filterEvent() { if (this.filterData === null) return this.tableData = this.tableData.filter(x => !this.filterData.some(e => e.name === x.name)) // [data3,data4] }
   /**
     * 存储对应树节点已存在内容
     * params:  path,type
     * path:   (层级) {27,32,55,81}
     * type:    类型 root | children | self
     * retrun:  返回返回对应的行数据
     */
    forEachPathElement(path, type) {
      if (!path) return
      let pathArr = path.replace(‘{‘, ‘‘).replace(‘}‘, ‘‘).split(‘,‘)
      if (type == ‘root‘) pathArr = pathArr.slice(0, 1)
      else if (type == ‘self‘) pathArr = pathArr.slice(0, -1)
      if (pathArr.length <= 0) return
      let filterData = [...this.treeData]
      for (let index = 0; index < pathArr.length; index++) {
        const item = parseInt(pathArr[index])
        if (index == 0) {
          filterData = filterData.find(e => e.id === item)
        } else {
          filterData = filterData.children.find(e => e.id === item)
        }
      }
      if (type != ‘root‘) filterData = filterData.children
      return filterData
    }

 

 

 

 

 

JavaScript 经验总结【持续更新】

原文:https://www.cnblogs.com/kizuna1314/p/14822578.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!