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

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

將文本文件轉成json數據并輸出。

將文本文件轉成json數據并輸出。

偶然的你 2018-08-07 10:09:55
文本文件格式如下:北京 2河北 3河北-邯鄲 301河北-保定 302河北-邢臺 303山東 4山東-青島 401山東-煙臺 402轉換成類似如下的json,我只要該結果const treeData = [{  label: '河北',  value: '3',  key: '3',  children: [{    label: '邯鄲',    value: '301',    key: '302',   }, {    label: '保定',    value: '302',    key: '302',   }], }]
查看完整描述

1 回答

?
呼啦一陣風

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

沒做容錯, 格式必須按上面的格式

var str = `北京 2河北 3河北-邯鄲 301河北-保定 302河北-邢臺 303山東 4山東-青島 401山東-煙臺 402`;var arrStr = str.split("\n");var result = [];
arrStr.map(i => {  let = item = i.split(" ");  if (i.indexOf("-") == -1) {
    result.push({      label: item[0],
      value: item[1],      key: item[1],
      children: []
    })
  } else {    let city = item[0].split("-");    let cur = result.find(j => j.label == city[0])
    cur.children.push({      label: city[1],
      value: item[1],      key: item[1],
    })
  }
})
console.log(result)
console.log(JSON.stringify(result))
[
{"label":"北京","value":"2","key":"2","children":[]},
{"label":"河北","value":"3","key":"3","children":[
    {"label":"邯鄲","value":"301","key":"301"},
    {"label":"保定","value":"302","key":"302"},
    {"label":"邢臺","value":"303","key":"303"}
]},
{"label":"山東","value":"4","key":"4","children":[
    {"label":"青島","value":"401","key":"401"},
    {"label":"煙臺","value":"402","key":"402"}
]}
]


查看完整回答
反對 回復 2018-09-16
  • 1 回答
  • 0 關注
  • 739 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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