最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js之如何刪除多層數(shù)組嵌套的最后一層中的部分?jǐn)?shù)據(jù)

 更新時(shí)間:2023年06月29日 10:32:39   作者:MYG_G  
這篇文章主要介紹了js之如何刪除多層數(shù)組嵌套的最后一層中的部分?jǐn)?shù)據(jù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

js刪除多層數(shù)組嵌套的最后一層中的部分?jǐn)?shù)據(jù)

我想刪除arr中,第二個(gè)對(duì)象里面的aList中的{id:153,name: daad}的元素。

const arr = [
  {
    id: 1,
    name: 'llaq',
    aList: [
      {
        id: 20,    
        name: 'hdka',
      },
      {
        id: 12,
        name: 'loqas',
      },
    ]
  },
  {
    id: 2,
    name: '略略略',
    aList: [
      {
        id: 21221,
        name: 'dqd',
      },
      {
        id: 152,
        name: 'daad',
      },
      {
        id: 19522,
        name: 'kka',
      },
    ]
  },
  {
    id: 3,
    name: '哐哐哐',
    aList: [
      {
        id: 32,
        name: '32',
      },
      {
        id: 132,
        name: '32daa',
      },
      {
        id: 1232,
        name: 'da',
      },
    ]
  },
]
// id是aList中要?jiǎng)h除的id
const handleClose = (id: number) => {
     const list = arr.map(item => {
     //修改被刪除的item的數(shù)據(jù)
      item.aList = item?.aList?.filter(v => v.id !== id);
      return item;
    })
    console.log(list,'list');
  };

多層嵌套數(shù)組拿到每一層數(shù)據(jù),可以組成新數(shù)組,也可以把內(nèi)部數(shù)據(jù)改變

數(shù)據(jù)結(jié)構(gòu)如下

data: [{
? ? ? ? ? id: 0,
? ? ? ? ? name: "1",
? ? ? ? ? children: [{
? ? ? ? ? ? ? id: 0 - 1,
? ? ? ? ? ? ? name: "0-1",
? ? ? ? ? ? ? children: [{
? ? ? ? ? ? ? ? ? id: 0 - 1 - 1,
? ? ? ? ? ? ? ? ? name: "0-1-1",
? ? ? ? ? ? ? ? ? children: [{...}]
? ? ? ? ? ? ? ? }]
? ? ? ? ? ? }]
? ? ? ? }]

以此類(lèi)推,數(shù)組里面還有數(shù)組,還有數(shù)組這種樣式

處理方法

tree(res) {
? ? ? for (const item of res) {
?? ?//這里可以處理很多數(shù)據(jù),比如遍歷一個(gè)數(shù)據(jù)數(shù)組匹配數(shù)據(jù)更改數(shù)據(jù)
? ? ? ? item.label = item.name;//如果label存在就是改變值,如果不存在就是往數(shù)組里面添加了一條新數(shù)據(jù)
? ? ? ? //如果item.children存在,就再調(diào)用一次函數(shù),傳數(shù)組給他,直到?jīng)]有兒子結(jié)束
? ? ? ? if (item.children) {
? ? ? ? ? this.tree(item.children);
? ? ? ? }
? ? ? }
? ? },

遍歷成新數(shù)組

tree(res,list) {
? ? ? for (const item of res) {
? ? ? ? list.push(item.id)
? ? ? ? if (item.children) {
? ? ? ? ? this.tree(item.children,list);
? ? ? ? }
? ? ? }
? ? },

傳數(shù)組以及需要形成的新數(shù)組,循環(huán)一次push一次,直到循環(huán)條件不成立就結(jié)束

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • javascript+css實(shí)現(xiàn)單擊顏色褪去效果

    javascript+css實(shí)現(xiàn)單擊顏色褪去效果

    javascript+css實(shí)現(xiàn)單擊顏色褪去效果...
    2007-08-08
  • KnockoutJS 3.X API 第四章之click綁定

    KnockoutJS 3.X API 第四章之click綁定

    click綁定主要作用是用于DOM元素被點(diǎn)擊時(shí)調(diào)用相關(guān)JS函數(shù)。這篇文章主要介紹了KnockoutJS 3.X API 第四章之click綁定,感興趣的朋友一起看看吧
    2016-10-10
  • js實(shí)現(xiàn)網(wǎng)頁(yè)圖片輪換播放

    js實(shí)現(xiàn)網(wǎng)頁(yè)圖片輪換播放

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)網(wǎng)頁(yè)圖片輪換播放,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • bootstrap警告框示例代碼分享

    bootstrap警告框示例代碼分享

    這篇文章主要為大家詳細(xì)介紹了bootstrap警告框示例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • JavaScript 最佳實(shí)踐:幫你提升代碼質(zhì)量

    JavaScript 最佳實(shí)踐:幫你提升代碼質(zhì)量

    在本篇教程中,我將指出一些重要的 JavaScript 最佳實(shí)踐,讓你不必去用另外一種艱難的方式來(lái)了解它們。準(zhǔn)備好去升級(jí)你的代碼吧
    2016-12-12
  • 原生JavaScript實(shí)現(xiàn)的無(wú)縫滾動(dòng)功能詳解

    原生JavaScript實(shí)現(xiàn)的無(wú)縫滾動(dòng)功能詳解

    這篇文章主要介紹了原生JavaScript實(shí)現(xiàn)的無(wú)縫滾動(dòng)功能,結(jié)合實(shí)例形式詳細(xì)分析了JavaScript無(wú)縫滾動(dòng)具體實(shí)現(xiàn)步驟、相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2020-01-01
  • js中split函數(shù)的使用方法說(shuō)明

    js中split函數(shù)的使用方法說(shuō)明

    本篇文章主要是對(duì)js中split函數(shù)的使用方法進(jìn)行了說(shuō)明介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2013-12-12
  • js 編程筆記 無(wú)名函數(shù)

    js 編程筆記 無(wú)名函數(shù)

    無(wú)名函數(shù),其中一個(gè)作用可能是生成新的函數(shù)對(duì)象的引用,主要是用于定義。
    2011-06-06
  • JavaScript中最常用的10種代碼簡(jiǎn)寫(xiě)技巧總結(jié)

    JavaScript中最常用的10種代碼簡(jiǎn)寫(xiě)技巧總結(jié)

    這篇文章主要總結(jié)了JavaScript中最常用的10種代碼簡(jiǎn)寫(xiě)技巧的相關(guān)資料,其中包括三元操作符、短路求值簡(jiǎn)寫(xiě)方式、聲明變量簡(jiǎn)寫(xiě)方法、if存在條件簡(jiǎn)寫(xiě)方法及JavaScript循環(huán)簡(jiǎn)寫(xiě)方法等等,分別給出了詳細(xì)的示例代碼供大家參考,需要的朋友們下面來(lái)一起看看吧。
    2017-06-06
  • JS設(shè)置時(shí)間無(wú)效問(wèn)題的解決辦法

    JS設(shè)置時(shí)間無(wú)效問(wèn)題的解決辦法

    在發(fā)送短信息驗(yàn)證碼的時(shí)候要用到j(luò)s設(shè)置時(shí)間倒序問(wèn)題,有時(shí)候會(huì)導(dǎo)致js失效問(wèn)題,怎么辦呢?今天小編給大家分享JS設(shè)置時(shí)間無(wú)效問(wèn)題的解決辦法,需要的朋友參考下吧
    2017-02-02

最新評(píng)論

巨野县| 张家口市| 梁平县| 松桃| 沅陵县| 万源市| 来宾市| 萨嘎县| 运城市| 千阳县| 宜黄县| 凉城县| 扶绥县| 丰台区| 渝北区| 赤水市| 达拉特旗| 静海县| 红安县| 桐梓县| 遂川县| 志丹县| 太白县| 沙坪坝区| 饶河县| 津南区| 拉孜县| 页游| 韶山市| 黄龙县| 剑阁县| 巴彦县| 永定县| 城市| 永平县| 南召县| 莱芜市| 包头市| 扶沟县| 安阳市| 子长县|