【JS】配列をランダムにシャッフルする方法

配列オブジェクト

使用

this.list=[
	{
    
    src:'https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-hello-uniapp/2cc220e0-c27a-11ea-9dfb-6da8e309e0d8.mp3',num:0},
	{
    
    src:'https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/2minute-demo.mp4',num:1},
	{
    
    src:'22',num:2},
	{
    
    src:'33',num:3},
	{
    
    src:'44',num:4}]
this.list = this.shuffle(this.list);
console.log(this.list)

ランダム プレイリストの場合
まず、プレイリストを破壊する前提は、元の配列を変更できないことであることを明確にする必要があります。

//获取min和max之间的一个随机整数[5,100];
function getRandomInt(min,max){
    
    
	return Math.floor(Math.random()*(max-min+1))+min;
}

//打乱数组
function shuffle(arr){
    
    
	let _arr = arr.slice(); //slice不会影响原来的数组,但是splice就会影响原来的arr数组
	for (let i = 0; i<_arr.length; i++;){
    
    
		let j = getRandomInt(0,i);
		let t = _arr[i];
		_arr[i] = _arr[j];
		_arr[j] = t;
	}
	return _arr;
}

2 つの純粋な数値配列

var a = [1, 2, 3, 4, 5];
a.sort(randomSort);
console.log(a);
function randomSort(a, b) {
    
     return Math.random() > 0.5 ? -1 : 1; }

結果: [5、3、2、1、4]

おすすめ

転載: blog.csdn.net/AAAXiaoApple/article/details/132491585