2017-11-29 9 views
-1

ボタンのクリックイベントで乱数を選択する関数を作成しようとしていました。しかし、私は配列を宣言し、/またはarray.lengthをMath.randomに掛けるために使用すると、関数が動作しないようです(エラーは表示されません)。配列を宣言したり長さを使用したりすることなく、関数は正常に動作しているようです。JavaScriptで配列が宣言されているときにmath.random()が機能しない

const quoteArea = document.querySelector(".quote"); 
const randomButton = document.getElementById("btn__random"); 
const quoteArr = [a , b, c]; 
randomButton.addEventListener("click", randomizeQuote); 

function randomizeQuote() { 
    const randomNum = Math.floor(quoteArr.length * Math.random()); 

    quoteArea.innerHTML = randomNum; 
} 
+3

'A'、' Bに変更しませんでした:ここにコードがあります'、' c'は定義されていません。したがって 'const quoteArr = [a、b、c]'は無効です。 –

+0

コードスニペットボタンを使用して、[最小限の、完全で検証可能な例](https://stackoverflow.com/help/mcve)を作成してみてください。私はあなたが正確な答えをより速く得るだろうと確信しています! (あなたが 'quoteArr'宣言を短くしたと仮定すると、何かが本当の問題です) – JKillian

+0

@JKillianこれが私の最初の質問です。それでもすべてのことがわかる –

答えて

0

const quoteArea = document.querySelector(".quote"); 
 
const randomButton = document.getElementById("btn__random"); 
 
const quoteArr = ['a' , 'b', 'c']; 
 
randomButton.addEventListener("click", randomizeQuote); 
 

 
function randomizeQuote() { 
 
    const randomNum = Math.floor(quoteArr.length * Math.random()); 
 

 
    quoteArea.innerHTML = randomNum; 
 
}
<button id='btn__random'>Random</button> 
 
<p class='quote'></p>

あなたは、B、Cが定義されていない場合は、正しくquoteArr配列を定義しquoteArr = ['a' , 'b', 'c'];

関連する問題