从数组生成多个随机单词

问题描述 投票:0回答:1

我在这里得到了这个代码。它随机选择其中一个名称。我所需要的只是选择多个名称,但不要重复任何一个

var textArray = [
  "Hello I'm Fred1",
  "Hello I'm Jimmy1",
  "Hello I'm Terry1",
  "Hello I'm Fred2",
  "Hello I'm Jimmy2",
  "Hello I'm Terry2",
  "Hello I'm Fred3",
  "Hello I'm Jimmy3",
  "Hello I'm Terry3"
];
var randomNumber = Math.floor(Math.random() * textArray.length ); 
document.getElementById("randomNumber").innerHTML = textArray[randomNumber];
<p id="demo"></p>

我想不通

javascript
1个回答
0
投票

只是从数组的浅拷贝中随机拼接:

var textArray = [
  "Hello I'm Fred1",
  "Hello I'm Jimmy1",
  "Hello I'm Terry1",
  "Hello I'm Fred2",
  "Hello I'm Jimmy2",
  "Hello I'm Terry2",
  "Hello I'm Fred3",
  "Hello I'm Jimmy3",
  "Hello I'm Terry3"
];


const copy = textArray.slice();
const result = Array.from({length:5}, () => copy.splice(Math.random() * copy.length | 0, 1)[0]);

demo.innerHTML = result.join('<br/>')
<p id="demo"></p>

© www.soinside.com 2019 - 2024. All rights reserved.