Есть код, он генерирует случайные не повторяющийся числа, кроме какого/каких - нибудь в данном случае одного, он вроде работает корректно, но почему-то(правда очень редко, гораздо реже, чем без этого условия) генерирует 0, скажите пожалуйста, из-за чего это может быть
var x, a=[], check=0;
function randomize(x) {
a[x]=Math.floor(Math.random()*5);
for(var j=0; j<x; j++){
if(a[x]==check||a[x]==a[j]){randomize(x)}
}
}
for(var i=0; i<=5; i++){
randomize(i);
}
function test(x){
x.style.display='none';
for(var d=0;d<4;d++){alert(a[d])}}
<div onclick='test(this)' style='display:block'>Begin</div>