【发布时间】:2017-09-10 01:50:25
【问题描述】:
我对 java 脚本比较陌生。我创建了一个对象和键值对。最近我需要添加另一个键 (color),其值应该来自 color array (color[])。如果 object size 大于 color array size,那么 color 键的 value 应该从颜色数组的开头
var sumArray=[{"sum":1},{"sum":2},{"sum":3},{"sum":4},{"sum":5},{"sum":6}]
var color=["#FF0F00","#FF6600","#FF9E01"];
var combinedObj =sumArray.map(function(obj) {
var me = Object.assign({}, obj);
var i=0;
me.color = color[i++];
return me;
});
输出是
[{"sum":1,"color":"#FF0F00"},{"sum":2,"color":"#FF0F00"},
{"sum":3,"color":"#FF0F00"},{"sum":4,"color":"#FF0F00"},
{"sum":5,"color":"#FF0F00"},{"sum":6,"color":"#FF0F00"}]
预期输出为
[{"sum":1,"color":"#FF0F00"},{"sum":2,"color":"#FF6600"},
{"sum":3,"color":"#FF9E01"},{"sum":4,"color":"#FF0F00"},
{"sum":5,"color":"#FF6600"},{"sum":6,"color":"#FF9E01"}]
如果对象大小大于颜色数组大小,则该值从头开始循环。
我尽力推荐了。但是失败了。提前致谢
【问题讨论】:
标签: javascript arrays