2015-12-05 29 views

回答

1

尝试限定,其不应被返回的数字阵列,使用Array.prototype.indexOf()以过滤是不包含3阵列内1到10之间唯一号码,4,7

var n = [3, 4, 7]; 
 

 
function rand(not) { 
 
    var r = Math.floor(Math.random() * 10) + 1; 
 
    return not.indexOf(r) === -1 ? r : rand(not) 
 
} 
 

 
console.log(rand(n))

或者,通过定义仅包含不是3,4,7

var n = [1, 2, 5, 6, 8, 9, 10]; 
 

 
function rand(arr) { 
 
    var r = Math.floor(Math.random() * arr.length); 
 
    return arr[r] 
 
} 
 

 
console.log(rand(n))

+0

优秀,太谢谢你了@ guest271314 – MojtabaSh