首页 > 其他分享 >js递归树结构

js递归树结构

时间:2023-07-11 17:47:57浏览次数:29  
标签:keyId 递归 树结构 isFlag list children js item newData

//递归重组tree数据
        concatTreeData(list,newData, keyId,isLayze) { 
            let isFlag = false;
            list.map((item, index) => { 
                if (item.id == keyId) {
                    if (item.children) {
                        item.children = [...item.children, ...newData]
                    } else { 
                        item.children = newData;
                    }
                    isFlag = true;
                } else { 
                    if (!isFlag) {
                        if (item.children) { 
                            this.concatTreeData(item.children,newData, keyId)
                        }
                     }
                }
              return item
            })
            this.treeDataList = list
        },

  

标签:keyId,递归,树结构,isFlag,list,children,js,item,newData
From: https://www.cnblogs.com/iwen1992/p/17545459.html

相关文章

  • 前端面试题-js(三)
    1.JavaScript中的对象JavaScript中有八种数据类型。有七种原始类型,因为它们的值只包含一种东西(字符串,数字或者其他)。相反,对象则用来存储键值对和更复杂的实体。对象是具有一些特殊特性的关联数组。它们存储属性(键值对),其中:属性的键必须是字符串或者symbol(通常是字符串)。值......
  • js中字符串的方法
    字符串的17种方法。。。。。。length:返回字符串的长度。conststr="Hello,World!";console.log(str.length);//输出13charAt(index):返回指定索引位置的字符。conststr="Hello,World!";console.log(str.charAt(4));//输出oconcat(str1,str2,...):连接两个或多......
  • nvm安装node报错Get "https://nodejs.org/dist/latest/SHASUMS256.txt": dial tcp 104
    windows上通过nvm管理node版本,在本地安装了nvm后,通过nvm安装node,报错了,信息:Couldnotretrievehttps://nodejs.org/dist/latest/SHASUMS256.txt.Gethttps://nodejs.org/dist/latest/SHASUMS256.txt:dialtcp104.20.23.46:443:i/otimeout 有了这样的信息,我......
  • Qt QJsonDocument以及与QJsonArray、QJsonObject、QJsonValue的关联
    0、说明QJsonDocument类提供了read/writeJSON文档的方法。用QJsonDocument::fromJson()方法,可以从将一个JSON文件(或者QByteArray数据)转换为QJsonDocument,用QJsonDocument::toJson()则能起到相反的用法。在此过程中的语法解析是很高效的,并且可以将JSON转换为Qt使用的二......
  • js 检测文本是否溢出
    自定义指令的方式手写实现/***检测文本是否溢出*参考https://github.com/ElemeFE/element/blob/dev/packages/table/src/table-body.js#L241*@param{*}e*@returns*/functionisEllipsis(e){returnnewPromise(resolve=>{constel=window.event......
  • go语言-不同类型转换为JSON格式数据
    1.将结构体转换为JSON:packagemainimport( "encoding/json" "fmt")typePersonstruct{ Namestring Ageint Emailstring}funcmain(){ person:=Person{Name:"Alice",Age:25,Email:"[email protected]"} ......
  • JS基础
    js基础之前学习的都忘了,重来一,js简介ECMAscript是javascript标准,所以一般情况下我们认为这是一个意思实际上javascript要更大一些完整的javascript实现应该由以下三个部分构成ECMAscriptDOMBOM构成 js的特点:解释型语言类似于java和c语言的结构动态语言基......
  • 细节决定成败,聊聊JS的类型(下)
    讲完了基本类型,我们来介绍一个现象:类型转换。因为JS是弱类型语言,所以类型转换发生非常频繁,大部分我们熟悉的运算都会先进行类型转换。大部分类型转换符合人类的直觉,但是如果我们不去理解类型转换的严格定义,很容易造成一些代码中的判断失误。其中最为臭名昭著的是JavaScript......
  • 【JavaScript】js 处理复制函数实现
    consthandleCopy=()=>{if(!keywordList.value.length)returnElMessage.warning('没有数据');consttext=JSON.stringify(keywordList.value);constinput=document.createElement('input');input.setAttribute('readonly......
  • React18+Next.js13+TS,B端+C端完整业务+技术双闭环(20章)
    最新React技术栈,实战复杂低代码项目-仿问卷星第1章开期准备试看3节|20分钟介绍课程内容,学习建议和注意事项。演示课程项目,让学员有一个整体的认识。第2章【入门】什么是ReactReact引领了现代前端开发的变革8节|50分钟介绍React的历史、背景和每次版本更新。介绍R......