在javascript中将数组转换为对象时如何添加其他属性?

问题描述 投票:1回答:1

我知道将数组转换为对象,我们使用

var object = Object.assign({}, array);

我从多选输入。中得到一个数组,像这样

var patterns = array["pattern1", "pattern2", "pattern3"];

然后使用object.assign之后,我得到了这样的对象。

patterns = {
  0: pattern1,
  1: pattern2,
  2: pattern3
}

我想向对象值添加更多属性和值,如下所示:

   patterns = {
   0:{
      name: pattern1,
      status: 0
   },
   1:{
      name: pattern2,
      status: 0
      }
    }

我该如何实现?

javascript
1个回答
1
投票

也许像这样:

var patterns = ["pattern1", "pattern2", "pattern3"];

function parrern_to_objarr(_patterns){
	var out = [];
	for(var key in _patterns){
		var out_obj = {};
		out_obj.name = _patterns[key];
		out_obj.status = 0;
		/* more properties if need... */
		out.push(out_obj);
	}
	return out;
}

console.log(parrern_to_objarr(patterns));
© www.soinside.com 2019 - 2024. All rights reserved.