2013-06-19 3 views
0

Я использую следующую функцию для генерации случайного числа от 1 до 20 и затем удвоения этого числа. Функция, похоже, работает, но после двойки я получаю неопределенный результат. Что вызывает это?Javascript Random Number Function - undefined

function PlayGame(){ 

    var min = 0; 
    var max = 20; 

    var randomNumber = Math.floor(Math.random() * (max - min + 1)) + min; 
    var doubleRandom = (randomNumber * 2); 

    document.write(randomNumber); 
    document.write(doubleRandom); 

} 

Я звоню в document.write (PlayGame()) в html документе. Возможно, это моя проблема.

+0

работает для меня (хотя и без 'document.write'): http://jsfiddle.net/PXpyq/ –

+1

ли вы на самом деле вызова' document.write (пустяки()) '? Это имеет смысл - 'PlayGame' возвращает' undefined', и вы делаете третий вызов 'document.write'. Вам нужно отредактировать свой вопрос, чтобы предоставить больше кода, чтобы мы могли воспроизвести вашу проблему. – apsillers

+0

Это работает для меня. Я меняю 'document.write' на' console.log'. что твой брат? – Stiger

ответ

1

Live demo:

Ваша задача в этом случае document.write. В дополнение к этому, вы можете упростить следующим:

function getRandomInRange(rangeMax) { 
    return Math.floor(Math.random() * rangeMax); 
}; 

function print(x) { 
    document.body.innerHTML += "<p>" + x + "</p>"; 
}; 

setInterval(function() { 
    print(getRandomInRange(20)); 
}, 2000); 
+0

отлично работает для меня с 'document.write': http://jsfiddle.net/PXpyq/2/ –

+0

Может быть, это в моем HTML вызова: <мета кодировок =" UTF-8 "> Случайные <тип скрипта =" текст/JavaScript»SRC = "random.js"> user2502053