Javascript 每次都使用Math.random获取相同的数组。如何在不刷新浏览器的情况下生成不同的数组?

Javascript 每次都使用Math.random获取相同的数组。如何在不刷新浏览器的情况下生成不同的数组?,javascript,Javascript,我正在尝试制作一个排序可视化工具。但是,当我使用下面的代码创建一个数组时,每次创建一个新数组时,我都会得到与前一个相同的数组!我必须刷新页面以获得新数组。我必须做些什么才能在不刷新浏览器的情况下获得不同的阵列 let sortingMethod = ""; let array = []; function between(max) { return Math.floor(Math.random() * Math.floor(max)); } function createArr

我正在尝试制作一个排序可视化工具。但是,当我使用下面的代码创建一个数组时,每次创建一个新数组时,我都会得到与前一个相同的数组!我必须刷新页面以获得新数组。我必须做些什么才能在不刷新浏览器的情况下获得不同的阵列

let sortingMethod = "";

let array = [];

function between(max) {  
    return Math.floor(Math.random() * Math.floor(max));
}

function createArray() {
    for(let i = 0; i < 20; i++) {
        array.push(between(20));
    }
    let arena = document.querySelector(".arena");
    arena.innerHTML = '';
    for(let i = 0; i < 20; i++) {
        let element = document.createElement('div');
        element.setAttribute('class', 'element');
        console.log(array[i]);
        element.style.height = (array[i] * 20) + "px"; 
        arena.appendChild(element);
    }
    //console.log("created");
}


let create = document.getElementById("create");

create.addEventListener('click', createArray);
let sortingMethod=”“;
让数组=[];
函数在(max){
返回Math.floor(Math.random()*Math.floor(max));
}
函数createArray(){
for(设i=0;i<20;i++){
array.push(在(20)之间);
}
让arena=document.querySelector(“.arena”);
arena.innerHTML='';
for(设i=0;i<20;i++){
让element=document.createElement('div');
setAttribute('class','element');
log(数组[i]);
element.style.height=(数组[i]*20)+“px”;
arena.appendChild(元素);
}
//控制台日志(“已创建”);
}
让create=document.getElementById(“create”);
create.addEventListener('click',createArray);

您永远不会清除阵列。因此,每次调用
createArray
,新值只会附加到已填充数组的末尾,但每次只使用前20个值


要解决您的问题,只需编写这部分代码
let array=[]
createArray
函数中。

您可以将随机数与当前时间(当前分钟或秒)的一些信息结合起来。我尝试了这个方法,但没有成功。我知道问题出在哪里了。我会写一个答案。