首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将数据推入具有角7的矩阵中?

如何将数据推入具有角7的矩阵中?
EN

Stack Overflow用户
提问于 2020-07-20 17:07:03
回答 2查看 54关注 0票数 0

这是我拥有的对象数组:

代码语言:javascript
复制
 [
  {
   indicatorDatasource: "trackingError", 
   un_an: 0,
   trois_ans: 0,
   cinq_ans: 0
  },
  {
   indicatorDatasource: "annualisedFundPerformance",
   un_an: 19.749642029434945,
   trois_ans: 0.08025487443092949,
   cinq_ans: -3.819180707679881
  },
  {
   indicatorDatasource: "volatility",
   un_an: 27.581656736670507,
   trois_ans: 17.12568099017286, 
   cinq_ans: 13.426711413441112
  }]

--我想把它变成那样:

代码语言:javascript
复制
[
      [ 'trackingError', 'annualisedFundPerformance', 'volatility' ],
      [ '0', '19.749642029434945', '27.581656736670507'],
      [ '0', '3.819180707679881', '13.426711413441112' ]
 ]

所以我创建了一个变量tableOptions : String[][],然后我从dataSourceObject中添加了这样的元素:

代码语言:javascript
复制
this.datasourceObject.forEach(element => {
  this.tableOptions[].push(element["indicatorDatasource"])
});
this.datasourceObject.forEach(element => {
  this.tableOptions[].push[(element["un_an"].toString())]
});
this.datasourceObject.forEach(element => {
  this.tableOptions[].push[(element["trois_ans"].toString())]
});
this.datasourceObject.forEach(element => {
  this.tableOptions[].push[(element["cinq_ans"].toString())]
});

但是它给了我一个错误Error : An element access expression should take an argument。有人能帮我把它转换成我想要的格式吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-20 17:23:35

代码语言:javascript
复制
var obj=[{ indicatorDatasource: "trackingError",  un_an: 0,  trois_ans: 0, cinq_ans: 0},{indicatorDatasource: "annualisedFundPerformance", un_an: 19.749642029434945, trois_ans: 0.08025487443092949, cinq_ans: -3.819180707679881},{indicatorDatasource: "volatility", un_an: 27.581656736670507, trois_ans: 17.12568099017286, cinq_ans: 13.426711413441112}]

var result=[];
Object.keys(obj[0] ? obj[0] : []).forEach(key=>{
    var temp=[];
    obj.forEach(cell=>{temp.push(cell[key].toString())});
    result.push(temp);
});
console.log(result)

票数 2
EN

Stack Overflow用户

发布于 2020-07-21 05:18:46

请使用下面的代码。

代码语言:javascript
复制
  let finalArray = [];
  for (let [key] of Object.entries(this.datasourceObject[0])) {
    let result = a.map(order => 
      order[key]);
      finalArray.push(result);
}
console.log(finalArray);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63000481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档