亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

多層嵌套的json數據,取出某個特定的key的數值。

多層嵌套的json數據,取出某個特定的key的數值。

DIEA 2019-03-15 17:01:30
比如有個json對象var obj = {"aa": "123","testkey": "#testkey1","list***": [     {     "bb": "123",     "testkey": "#testkey2"      },      {     "cc": "123",     "testkey": "#testkey3"      }, ]}json對象是多層嵌套的,每層的鍵值不確定,目的是想取出所有的key為testkey的值,即["#testkey1", "#testkey2", "#testkey3"]。想知道如何優雅的實現這個需求呢?嘗試的方法:將json轉化成字符串,然后正則提取對應的key, 但正則表達式寫的比較渣,還沒有弄出來。
查看完整描述

2 回答

?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

按照你的思路來,大概是這樣。。
var str=JSON.stringify(obj)
str.match(/(?<=("testkey":")).*?(?=")/g)

查看完整回答
反對 回復 2019-03-15
?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

const getArrFromObj = obj => {  const rtn = []  const iter = obj => {
    rtn.push(obj.testkey)    const match = Object.keys(obj).filter(i => i.match(/^list/))    if (match.length) obj[match[0]].forEach(iter)
  }
  iter(obj)  return rtn
}


https://img1.sycdn.imooc.com//5c8b6a140001feba05800800.jpg

查看完整回答
反對 回復 2019-03-15
  • 2 回答
  • 0 關注
  • 4013 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號