2017-06-26 15 views
-1

単純なインクルーシブランダム関数を作成しようとしていますが、なんらかの理由でNaNが返されます。 Mozillaのリファレンスからこの関数をコピーしました。ありがとう。JavaScriptのランダム関数がNaNを返す

var size = {min:1, max: 1700}; 

function getRndInt(min, max) { 
min = Math.ceil(min); 
max = Math.floor(max); 
return Math.floor(Math.random() * (max - min + 1)) + min; 
} 

function generate() { 
document.getElementById("Text1").innerHTML = getRndInt(size.min - size.max); 
} 
+3

を渡しているあなたの 'getRndInt()'関数は、2つの引数を取りますが、あなたは一つだけを渡しています。 – Pointy

+0

あなたは 'size.min - size.max'を書きました:' size.min、size.max'を意味しましたか? – fcalderan

+0

皆様、ありがとうございます。 – vvAve

答えて

0

getRndInt関数は、2つのパラメータ(最小、最大)を必要とする。.. 1を送りました。

function getRndInt(min, max) 

しかし、あなたは一つだけ

getRndInt(size.min - size.max); 
+0

それはとても分かりました、ありがとう。 – vvAve

1

減算-記号で、コンマ,へのパラメータの必要性は、あなたがあなたの関数への2つの引数を送信したことになっている

var size = { 
 
    min: 1, 
 
    max: 1700 
 
}; 
 

 
function getRndInt(min, max) { 
 
    min = Math.ceil(min); 
 
    max = Math.floor(max); 
 
    return Math.floor(Math.random() * (max - min + 1)) + min; 
 
} 
 

 
function generate() { 
 
    console.log(getRndInt(size.min, size.max)); 
 
} 
 
generate()

1

を分離するので、それがあるようです。あなただけが定義されている

var size = {min:1, max: 1700}; 
 

 
function getRndInt(min, max) { 
 
min = Math.ceil(min); 
 
max = Math.floor(max); 
 
return Math.floor(Math.random() * (max - min + 1)) + min; 
 
} 
 

 
function generate() { 
 
document.getElementById("Text1").innerHTML = getRndInt(size.min,size.max); 
 
} 
 

 
generate();
<div id="Text1"></div>

関連する問題