这是代码
function CreateArray(length) {
var array1 = [];
for (var k = 0, t = length; k < t; k++) {
array1.push(Math.round(Math.random() * 3000000))
};
return array1;
}
var array = CreateArray(100,500,1000) // works only for 100
看起来我认为这是一个愚蠢的问题,但我一直在调用一个函数。如何用不同的长度调用这个函数?
答案 0 :(得分:2)
在参数中使用rest参数,并将map
每个长度用于一个新的random数组:
const CreateArray = (...lengths) => lengths.map(length => (
Array.from({ length }, () => Math.floor(Math.random() * 3000000))
));
const [arr1, arr2, arr3] = CreateArray(100, 500, 1000);
console.log(arr2.length);
console.log(arr2[10]);
答案 1 :(得分:0)
使用一次调用返回乘法数组:
解决方案:
function CreateArray(length) {
var array1 = [];
for (var k = 0, t = length; k < t; k++) {
array1.push(Math.round(Math.random() * 3000000))
};
return array1;
}
//var array = CreateArray(100,500,1000);
var arrayArguments= [100, 500, 1000],
resultArray = arrayArguments.map(function(num) {
return CreateArray(num);
});
console.log(resultArray);
&#13;
希望它有用:)