JavaScript 迭代将数组的值分配给对象

标签 javascript arrays

我有具有动态数量的属性的对象和具有动态数量的项目的数组。我需要遍历它们并将数组的值分配给对象的属性。

var obj = {
  property1: null,
  property2: null,
  .....
};

var array = ["some value1", "some value2"...];

必须

var obj = {
  property1: "some value1",
  property2: "some value2",
  .....
}

最佳答案

如果您字面上property1等,那么这非常简单,因为我们可以使用数组索引和括号表示法从该索引构建属性名称(加一):

var obj = {
  property1: null,
  property2: null
    //.....
};

var array = ["some value1", "some value2"/*...*/];
array.forEach(function(value, index) {
  //  vvvvvvvvvvvvvvvvvvvvvvvv------ string concat to build the property name
  obj["property" + (index + 1)] = value;
  // ^------------------------^----- brackets notation to refer to the property
  //                                 using a runtime-defined name
});
console.log(obj);

关于JavaScript 迭代将数组的值分配给对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38872321/

相关文章:

javascript - Iframe/Popup 重定向开启窗口

javascript - Nestjs 验证器构造函数参数错误

javascript to cocoa with variable args

javascript - 跨域 AJAX 请求在 IE10 上不起作用

javascript - 评估 ES6 数组理解字符串

C++ 数组,平均值(初级)

javascript - jQuery 图片内存游戏

javascript - 无法从 JSF 1.2 页面中的另一个 Web 应用程序加载 JavaScript

python - 如何在Python中计算两个二维数组之间的互元素?

python - 找到所有接近目标的值,如 numpy.searchsorted() 但返回所有相同的值?