如何创建一个包含40个元素、随机值从0到39的数组?喜欢
[4, 23, 7, 39, 19, 0, 9, 14, ...]
我试着从这里使用解决方案:
http://freewebdesigntutorials.com/javaScriptTutorials/jsArrayObject/randomizeArrayElements.htm
但是我得到的数组几乎没有随机性。它会生成很多连续数字的块...
发布于 2015-11-21 02:31:02
ES5:
function randomArray(length, max) {
return Array.apply(null, Array(length)).map(function() {
return Math.round(Math.random() * max);
});
}
ES6:
randomArray = (length, max) => [...new Array(length)]
.map(() => Math.round(Math.random() * max));
发布于 2017-09-24 02:06:36
甚至更短的ES6方法:
Array(40).fill().map(() => Math.round(Math.random() * 40))
此外,您还可以有一个带参数的函数:
const randomArray = (length, max) =>
Array(length).fill().map(() => Math.round(Math.random() * max))
发布于 2018-12-20 06:23:07
最短:-)
[...Array(40)].map(e=>~~(Math.random()*40))
https://stackoverflow.com/questions/5836833
复制相似问题