首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >尝试在javascript中混洗多个数组,但以相同的方式?

尝试在javascript中混洗多个数组,但以相同的方式?
EN

Stack Overflow用户
提问于 2017-04-07 23:08:35
回答 1查看 222关注 0票数 1

我想在同一个函数中随机混洗这两个数组

代码语言:javascript
运行
复制
var array1 = [1,2,3,4,5];
var array2 = [6,7,8,9,10];

以便它返回随机混洗的每个数组,例如

代码语言:javascript
运行
复制
4,2,3,5,1
7,9,6,8,10

另外,在返回时,我想在两者之间换行,请帮助?

EN

回答 1

Stack Overflow用户

发布于 2017-04-07 23:46:09

为方便访问,向Array.prototype添加了shuffle方法-返回一个修改后的数组,保持原始数组不变。

代码语言:javascript
运行
复制
Array.prototype.shuffle = function() {
  var rIndex, temp,
    input = this.slice(0),
    cnt = this.length;

  while (cnt) {
    rIndex = Math.floor(Math.random() * cnt);
    temp = input[cnt - 1];
    input[cnt - 1] = input[rIndex];
    input[rIndex] = temp;
    cnt--;
  }

  return input;
}

var array1 = [1, 2, 3, 4, 5];
var array2 = [6, 7, 8, 9, 10];

document.getElementById('shuffle-btn').onclick = function(){
  document.getElementById('output').innerHTML = [array1.shuffle(), array2.shuffle()].join('\n');
}
代码语言:javascript
运行
复制
<button id="shuffle-btn">Shuffle</button>
<pre id="output"></pre>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43281492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档