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

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

在Javascript中合并JSON和對象

在Javascript中合并JSON和對象

慕婉清6462132 2022-05-26 11:22:03
我有以下 json 和對象。acctData = [{"acctNum": "AAA - 1234","user": "Alice"},{"acctNum": "AAA - 5231","user": "Bob"},{"acctNum": "AAA - 9921","user": "Alice"},{"acctNum": "AAA - 8191","user": "Alice"}];balance = {"AAA - 1234": 4593.22,"AAA - 9921": 0,"AAA - 5231": 232142.5,"AAA - 8191": 4344};我想合并它以獲得以下響應[{acctNum: "AAA - 1234", user: "Alice", balance: 4593.22},{acctNum: "AAA - 5231", user: "Bob", balance: 232142.5},{acctNum: "AAA - 9921", user: "Alice", balance: 0},{acctNum: "AAA - 8191", user: "Alice", balance: 4344}]function myFunction() {    for (var key in acctData) {       for(var name in balance) {         if ( acctData[key].acctNum === name) {          acctData[key]['balance']= balance[acctData[key].acctNum];          break;         }       }     }}我這是使用香草javascript的正確方法還是有更有效的方法?
查看完整描述

2 回答

?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

您只需使用地圖即可。


const acctData = [

  {

  "acctNum": "AAA - 1234",

  "user": "Alice"

  },

  {

  "acctNum": "AAA - 5231",

  "user": "Bob"

  },

  {

  "acctNum": "AAA - 9921",

  "user": "Alice"

  },

  {

  "acctNum": "AAA - 8191",

  "user": "Alice"

  }

];


const balance = {

  "AAA - 1234": 4593.22,

  "AAA - 9921": 0,

  "AAA - 5231": 232142.5,

  "AAA - 8191": 4344

};


const newAccount = acctData.map(acc => {

  acc.balance = balance[acc.acctNum];

  return acc;

});


console.log(newAccount);


查看完整回答
反對 回復 2022-05-26
?
嚕嚕噠

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

您可以使用.map()和對象解構:


let result = acctData.map(({acctNum, user}) => ({acctNum, user, balance: balance[acctNum]}));

let acctData = [

{

"acctNum": "AAA - 1234",

"user": "Alice"

},

{

"acctNum": "AAA - 5231",

"user": "Bob"

},

{

"acctNum": "AAA - 9921",

"user": "Alice"

},

{

"acctNum": "AAA - 8191",

"user": "Alice"

}

];

let balance = {

"AAA - 1234": 4593.22,

"AAA - 9921": 0,

"AAA - 5231": 232142.5,

"AAA - 8191": 4344

};


let result = acctData.map(({acctNum, user}) => ({acctNum, user, balance: balance[acctNum]}));


console.log(result);


查看完整回答
反對 回復 2022-05-26
  • 2 回答
  • 0 關注
  • 113 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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