创建具有唯一值的部分随机对象(JavaScript)

时间:2018-06-26 04:17:03

标签: javascript

我想从两个数组构建一个对象,并且该对象应为第一个数组的每个不同值具有唯一的键名,并从第二个数组中随机选择一个值,该值也是唯一的。

var keyNames = ['a','b','a','c','a']
var valuesToPickFrom = ['foo', 'bar', 'baz', 'qux', 'quux', 'waldo', 'fred']

即,所需的最终结果是:

{ 'a':'foo', 'b':bar', 'c':'baz' } // each value is unique

但不是:

{ 'a':'foo', 'b':bar', 'c':'bar' } // repeated value, no good

这怎么办?

1 个答案:

答案 0 :(得分:2)

问题太模糊了。所以我只会描述您的函数应该做什么:

  1. 从两个阵列中消除重复项。 Eliminate array duplicates
  2. 随机化两个数组。
  3. 启动结果对象。 var result={}
  4. 一个while循环,直到没有更多的键或值为止。
  5. array.pop从数组中获取键和值。将其添加到对象。 result[key]=value;
  6. 返回结果对象。