数组随机交叉

发布于 2022-09-12 02:35:51 字数 151 浏览 13 评论 0

如何将多个数组进行随机交叉?

const a= [1,2,3,4,5]
const b= ['a','b','c']
const c= [9,'d','e',6]

数组 d 是一个由上述3个(亦或更多)的数组随机交叉而成。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夏尔 2022-09-19 02:35:51

不太明白随机交叉的定义,不知是否能解决你的问题

const a= [1,2,3,4,5]
const b= ['a','b','c']
const c= [9,'d','e',6]
var Arr=a.concat(b).concat(c); // 合并数组
Arr.sort(function(){return Math.random()>0.5?-1:1;}); //随机排序
console.log(Arr)
自由如风 2022-09-19 02:35:51

先和并,在打乱数组就可以了.

var shuffle = function(arr)  {
    var m = arr.length, t, i;
    while (m) {
        i = Math.floor(Math.random() * m--);
        t = arr[m];
        arr[m] = arr[i];
        arr[i] = t;
    }
    return arr;
}
shuffle(a.concat(b,c)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文