Показать сообщение отдельно
  #1 (permalink)  
Старый 20.03.2019, 03:49
Новичок на форуме
Отправить личное сообщение для Володимир Посмотреть профиль Найти все сообщения от Володимир
 
Регистрация: 20.03.2019
Сообщений: 7

Хочу получить рандомное не повт. число.
var num = 3;
var last = []
function pusk(){
    for(var a = 0; a < 4; a++){
 function randomNumbe (){
    return Math.floor(Math.random()*3);
}


var randoM = randomNumbe; 
var neW = randoM(num); //1
if(last.length === 0){      //2
    last.unshift(10)
}

var l = last.length
for(var a = 0; a < l; a++){ //3
    if(neW === last[a]){
return pusk()
    }
}
for(var k = 0; k < l; k++){//4
    if(neW !== last[k]){
        last.unshift(neW)
        break;
            }
}
    }
document.getElementById("pasha").addEventListener("click",pusk)
// for( var i = 0; i < num.length; i++){
//    if(neW === num[i]){
//     num.splice(neW,1)
//        alert(num)
//    }
// }
}

1.Получаю ранд число

2.Это делается для того, чтобы добавить просто любое число в массив, чтобы он не был пустой и цикл for мог заработать (может как-то можно обойтись и без этого, подскажите)

3.Прошел по массиву и проверяю или новое число равно хотя бы одному прошлом числу, если да то функция запускается заново,пока не выпадет полн. новое число. Тут работает все прекрасно условие и шаг выполняются и проверяются после каждого ++.


4.В этом шаге выполняются аналогичные процессы только проверяется,
если новое число не равно ни в коем случае старом, то оно добавляется в массив last.
Проблема в том, что условие и шаг цикла не выполняется, итерация не происходит и не проверяется условие после каждого ++. Помогите очень вас прошу.
Извините за такое написание кода, делаю в спешке

Последний раз редактировалось Володимир, 20.03.2019 в 03:51.
Ответить с цитированием