var getRandomArray = function() {
var i = 0,
s = '',
sp = ',',
next;
while (i < 100) {
// 产生1-100的随机数
next = Math.random() * 100 + 1;
// 判断产生的数是否在随机数字符串里
if (s.indexOf(next) === -1) {
// 不存在
// 则加上这条
s += next + sp;
// 并且记数器加1
i++;
}
// 否则记数器不加1,继续循环
}
// 最后得到的是xx,xx,形式的字符串
// 因为split函数会保留最后一个分隔符后的数
// 所以通过slice(0,-1)去掉最后一个字符(也就是,号)
// 这样99个分隔符拼成的字符串就会被,号分割
// 成100个随机数组了
return s.slice(0, -1).split(',');
}
alert(getRandomArray());
你确定是1-100,而不是1-1000或者10000??