Javascript 生成随机相同对象

Javascript 生成随机相同对象,javascript,arrays,object,Javascript,Arrays,Object,函数getRandomInt(最小值、最大值){ 返回Math.floor(Math.random()*(max-min+1))+min; } 函数init(){ var-resArr=[]; 对于(变量i=0;i

函数getRandomInt(最小值、最大值){ 返回Math.floor(Math.random()*(max-min+1))+min; } 函数init(){ var-resArr=[]; 对于(变量i=0;i<10;i++){ var obj=新对象(); obj.q=getRandomInt(3,5); obj.r=getRandomInt(1,10); 再推力(obj); } var str=‘乘法’; 对于(变量i=0;i
刷新
尝试使用方法。检查匹配的对象长度。并使用
进行更改,而
循环始终给出
10
结果

已更新

函数getRandomInt(最小值、最大值){ 返回Math.floor(Math.random()*(max-min+1))+min; } 函数init(){ var-resArr=[]; var i=0; while(true){ var obj=新对象(); obj.q=getRandomInt(3,5); obj.r=getRandomInt(1,10); 如果(!resArr.filter(a=>a.q==obj.q&&a.r==obj.r).length>0){ 再推力(obj); i++; } 如果(i==10){ 打破 } } var str=‘乘法’; 对于(变量i=0;i
刷新

我创建了一个函数来检查数组中的重复对象

函数getRandomInt(最小值、最大值){ 返回Math.floor(Math.random()*(max-min+1))+min; } 功能检查重复(arr、obj){ 对于(变量i=0;i
刷新

您可以使用哈希表,并在检查是否已插入后将所有随机组合插入其中

函数getRandomInt(最小值、最大值){ 返回Math.floor(Math.random()*(max-min+1))+min; } 函数init(){ var resArr=[], 散列={}; 对于(变量i=0;i<10;i++){ var obj=新对象(); 做{ obj.q=getRandomInt(3,5); obj.r=getRandomInt(1,10); }while(hash[[obj.q,obj.r].join(“|”)] hash[[obj.q,obj.r].join(“|”)]=true; 再推力(obj); } var str=‘乘法’; 对于(变量i=0;i
刷新

你没听说过:
{}!=={}
。我认为这不起作用,两个对象是不同的,即使它们具有相同的属性。是的,因为他正在创建一个新对象,include调用永远不会返回true。您需要检查新对象的q值和r值是否与所有现有对象的q值和r值匹配您检查它是否没有给出10个数字??