使用范围中的值对象的数组

时间:2017-07-25 10:26:21

标签: javascript arrays object

我有一个疯狂的要求。我不确定如何使它运作良好,可能我想在这里得到社区的帮助。这是我第一次来这里。让我清楚地解释一下我的情况。

我有一个数组,比如10个元素。

var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].reverse();

现在我需要创建一个包含数组元素的键对象,但它们的值应该是:

  • 前5名为“高”。
  • 接下来3是“中等”。
  • 休息2为“低”。

我在另一个数组中有上述信息:

var capacity = [5, 3, 2];

上述三个值(highmedium,低)是静态的。不知道如何从这里开始。我不确定我是否应该使用硬编码的for循环:

var obj = {};
for (var i = 0; i < capacity[0]; i++)
  obj[arr[i]] = "high";
for (; i < capacity[0] + capacity[1]; i++)
  obj[arr[i]] = "medium";
for (; i < capacity[0] + capacity[1] + capacity[2]; i++)
  obj[arr[i]] = "low";

不确定这是否是正确的继续进行方式。任何正确方向的指针?感谢。

var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10].reverse();
var capacity = [5, 3, 2];
var obj = {};
for (var i = 0; i < capacity[0]; i++)
  obj[arr[i]] = "high";
for (; i < capacity[0] + capacity[1]; i++)
  obj[arr[i]] = "medium";
for (; i < capacity[0] + capacity[1] + capacity[2]; i++)
  obj[arr[i]] = "low";
console.log(obj);

0 个答案:

没有答案