以编程方式向 Javascript 中的对象添加属性

科里

我正在尝试以编程方式向对象添加属性。不过,这种情况有点不同,我不确定如何解决这个问题。

通常,要将属性应用于对象,我会在以下上下文中应用它:

var a = []
var len = result[0].length
for(m=0; m < len; m++){
  a[m] = "b" + m // creates b1-b17 usually, but if the results are shorter it will create them equal to the length of the results
}
const values = {}
for(g=0; g<len; g++){
  values[a[g]] = [];
}

这通常会向“b1”到“b17”的每个属性添加一个空数组,但它是动态的,以防结果较短。

现在我想对这段代码做同样的事情,但只在“返回”部分内。无论如何,我可以调用它并像我以前所做的那样以编程方式输入这些变量吗?

const rowData = tableData.map(result => {
  for(var h in a){
    values[a[h]].push(result[h]);
  }
  return {
    //I want to put properties in here programmatically and dynamically like I did previously
  }
})

谢谢你们的时间!

标记

您可以将类似数组['data1', 'data2', 'data3', 'data4']的对象转换为具有动态键的对象,例如column1using reduce()例如:

let arr = ['data1', 'data2', 'data3', 'data4']
let obj = arr.reduce((a, c, i) => (a['column' + (i + 1)] = c, a), {} )

console.log(obj)

有了这个,给定一个这样的数组数组,你可以将它与它结合map()以获得最终结果:

let tableData = [['data1', 'data2', 'data3', 'data4'], ['data11', 'data22', 'data33', 'data44']]

// for each array in tableData make an object with reduce and  add it to the returned array   
let result = tableData.map(arr => arr.reduce((a, c, i) => (a['column' + (i + 1)] = c, a), {} ))

console.log(result)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

以编程方式向元素添加属性

来自分类Dev

JavaScript:向数组中的对象添加新属性

来自分类Dev

使用JavaScript中的函数调用向对象添加属性

来自分类Dev

向 javascript 中的对象添加新属性无法正常工作?

来自分类Dev

向嵌套对象添加属性-Javascript

来自分类Dev

以编程方式向容器添加控件

来自分类Dev

以编程方式向Spark DataFrame添加几列

来自分类Dev

以编程方式快速向NavigationBar添加约束

来自分类Dev

以编程方式向按钮添加操作

来自分类Dev

以编程方式向图像添加边框

来自分类Dev

以编程方式向UITextField添加约束

来自分类Dev

以编程方式向Spark DataFrame添加几列

来自分类Dev

无法以编程方式向图层添加要素

来自分类Dev

以编程方式向视图添加约束

来自分类Dev

以编程方式向按钮添加事件

来自分类Dev

以编程方式在javascript中选择对象的属性

来自分类Dev

如何动态地向javascript数组中的每个对象添加属性

来自分类Dev

如何在JavaScript中在运行时中向对象添加/删除属性

来自分类Dev

在javascript中向对象添加长度属性有什么用?

来自分类Dev

以编程方式向Android中的framelayout添加片段

来自分类Dev

以编程方式向Android中的framelayout添加片段

来自分类Dev

如何以编程方式向表中添加表行?

来自分类Dev

在 Matlab 中以编程方式向轴标签添加字母

来自分类Dev

为什么我的对象没有以编程方式正确添加到 JavaScript 中的 select 元素?

来自分类Dev

如何在Android中以编程方式向画廊添加图像或以编程方式刷新画廊

来自分类Dev

在JavaScript中向数组添加属性

来自分类Dev

更新是否存在或向对象数组添加新元素-javascript + lodash中的优雅方式

来自分类Dev

在Javascript中向对象添加原型

来自分类Dev

为什么我们不能像在javascript中为对象常量那样向函数体内的函数对象添加属性?

Related 相关文章

  1. 1

    以编程方式向元素添加属性

  2. 2

    JavaScript:向数组中的对象添加新属性

  3. 3

    使用JavaScript中的函数调用向对象添加属性

  4. 4

    向 javascript 中的对象添加新属性无法正常工作?

  5. 5

    向嵌套对象添加属性-Javascript

  6. 6

    以编程方式向容器添加控件

  7. 7

    以编程方式向Spark DataFrame添加几列

  8. 8

    以编程方式快速向NavigationBar添加约束

  9. 9

    以编程方式向按钮添加操作

  10. 10

    以编程方式向图像添加边框

  11. 11

    以编程方式向UITextField添加约束

  12. 12

    以编程方式向Spark DataFrame添加几列

  13. 13

    无法以编程方式向图层添加要素

  14. 14

    以编程方式向视图添加约束

  15. 15

    以编程方式向按钮添加事件

  16. 16

    以编程方式在javascript中选择对象的属性

  17. 17

    如何动态地向javascript数组中的每个对象添加属性

  18. 18

    如何在JavaScript中在运行时中向对象添加/删除属性

  19. 19

    在javascript中向对象添加长度属性有什么用?

  20. 20

    以编程方式向Android中的framelayout添加片段

  21. 21

    以编程方式向Android中的framelayout添加片段

  22. 22

    如何以编程方式向表中添加表行?

  23. 23

    在 Matlab 中以编程方式向轴标签添加字母

  24. 24

    为什么我的对象没有以编程方式正确添加到 JavaScript 中的 select 元素?

  25. 25

    如何在Android中以编程方式向画廊添加图像或以编程方式刷新画廊

  26. 26

    在JavaScript中向数组添加属性

  27. 27

    更新是否存在或向对象数组添加新元素-javascript + lodash中的优雅方式

  28. 28

    在Javascript中向对象添加原型

  29. 29

    为什么我们不能像在javascript中为对象常量那样向函数体内的函数对象添加属性?

热门标签

归档