簡體   English   中英

在 ES6 javascript 中更新現有的對象數組

[英]Updating an existing object Array in ES6 javascript

我是 ES6 JavaScript 的新手。 我正在尋找一種方案,我可以在其中更新來自 Web 服務的對象數組並將數據格式傳遞給表。

我正在使用 ReactJS 'rc-table'。

https://www.npmjs.com/package/rc-table

要以 rc-table 格式顯示我們的數據,我們需要在來自后端的數據中有一個屬性 key:"somevalue"。

我的數據格式如下:

{
 {
   Name:'Robert',
   City: 'Barcelona'
 },
 {
   Name: 'Marguaritte',
  City: 'Baltimore'

 }
}

現在它將以 rc-table 格式顯示,僅當對象具有唯一鍵屬性時。

例如:

 {
 {
  Name:'Robert',
  City: 'Barcelona',
   Key:1
 },
 {
  Name: 'Marguaritte',
  City: 'Baltimore',
  Key:2

  }
 }

我正在尋找用“key:1”和“key:2”更新我的對象附加的是我的代碼。 任何幫助,將不勝感激。

好吧,您的實際數組格式不正確,您應該將{}替換為[]這樣它就是一個有效的數組。

無論如何,您應該使用Array.prototype.map() ,它將使用回調函數返回一個自定義數組,該回調函數會將key屬性添加到每個迭代項。

這是您應該如何編寫代碼:

var data = arr.map(function(item, index) {
  item.key = index + 1;
  return item;
});

ES6 解決方案:

使用Chester Millisock在評論中建議的ES6 箭頭函數

var data = arr.map((item, index) => {
   item.key = index + 1;
   return item;
}); 

演示:

 var arr = [{ Name: 'Robert', City: 'Barcelona' }, { Name: 'Marguaritte', City: 'Baltimore' } ]; var data = arr.map((item, index) => { item.key = index + 1; return item; }); console.log(data);

我想你想做這樣的事情。 我假設您的數據是一個對象數組,而不是您建議的沒有鍵的對象。

const data = data.map((el, index) => {
    el.Key = index;
    return el;
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM