用js输出1-12随机排列
时间: 2023-09-03 22:24:58 浏览: 193
JavaScript 生成随机数并自动大小排序
5星 · 资源好评率100%
### 回答1:
以下是使用 JavaScript 实现输出 1-12 随机排列的代码:
```javascript
// 定义一个数组,包含数字 1 到 12
var arr = [];
for (var i = 1; i <= 12; i++) {
arr.push(i);
}
// 使用 Fisher–Yates shuffle 算法随机排序数组
for (var i = arr.length - 1; i > 0; i--) {
var j = Math.floor(Math.random() * (i + 1));
var temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
// 循环输出随机排列后的数组
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
```
该代码首先创建一个包含数字 1 到 12 的数组,然后使用 Fisher–Yates shuffle 算法随机排列该数组,最后循环输出随机排列后的数组。
### 回答2:
可以使用JavaScript中的Math.random()函数来生成一个0到1之间的随机数,然后将其乘以12并取整,得到一个0到11的随机整数。再加上1,即可得到1到12的随机数。
以下是用JavaScript代码实现的例子:
```javascript
// 定义一个长度为12的数组,用来存放1到12的数字
var numbers = new Array(12);
// 生成1到12的随机排列
for (var i = 0; i < numbers.length; i++) {
// 生成一个0到11的随机整数
var randomIndex = Math.floor(Math.random() * 12);
// 如果该随机位置已经有数字了,则继续生成随机数,直到找到一个空位置
while (numbers[randomIndex] !== undefined) {
randomIndex = Math.floor(Math.random() * 12);
}
// 将当前数字放到随机位置
numbers[randomIndex] = i + 1;
}
// 输出1到12的随机排列
console.log(numbers);
```
这段代码会生成一个1到12的随机排列,并将结果打印到控制台。每次运行代码,都会得到一个不同的随机排列。
### 回答3:
可以使用JavaScript编写一个函数来实现1-12的随机排列输出。以下是一个可能的实现方式:
```javascript
function randomOrder() {
var numbers = [];
// 将1-12的数字存入数组
for (var i = 1; i <= 12; i++) {
numbers.push(i);
}
var randomNumbers = [];
// 随机选择数字并将其从数组中删除
while (numbers.length > 0) {
var randomIndex = Math.floor(Math.random() * numbers.length);
var randomNum = numbers[randomIndex];
randomNumbers.push(randomNum);
numbers.splice(randomIndex, 1);
}
// 输出随机排列的数字
console.log(randomNumbers);
}
randomOrder();
```
上述代码首先创建一个空数组`numbers`来存储1-12的数字。然后使用for循环遍历1-12,将每个数字依次添加到数组中。
接下来,创建另一个空数组`randomNumbers`,用于存储随机排列的数字。使用while循环,随机选择一个数组中的索引并获取该位置上的数字,将其保存到`randomNumbers`数组中。然后使用`splice`函数将该数字从`numbers`数组中删除,确保它不会被再次选择。
最后,使用`console.log`函数输出随机排列的数字数组。
阅读全文