var arr = ['a','b','c','d','e','f','g','h'];var letter = Math.floor(Math.random()*arr.length);var randomParam = arr[letter]我的需求是生成一个数组,数组里面有4个字符串,每个字符串里面有两个字母,最终8个字母都要分配到字符串里面去,不能有重复情况。应该怎样去循环呢?
5 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
var a = ['a', 'b','c', 'd','e', 'f', 'g', 'h'],
n = a.sort(function() {
return Math.random() - 0.5;
}).reduce(function(p, n, i) {
return i & 1 ? p[0] += n : p.unshift(n), p;
}, []);
alert(n);
杨__羊羊
TA贡献1943条经验 获得超7个赞
let str = arr.sort(() => Math.random() < 0.5).join('');
let k = 0;
let newArr = Array(4).fill(0).map(item => {
str = str.substring(k);
k = 2;
return str.substr(0, 2);
});
console.log(newArr)
添加回答
举报
0/150
提交
取消