2016-11-10 2 views
0

私はすべての素数1 - 100を印刷するjavascriptを持っており、結果を印刷するのにinnerHTMLを使用しています。私のコンソールは私に数字のリストを与えていますが、innerHTMLは私に単一の番号を与えています。 100と思う。私のコンソールに表示されているのと同じように、IDのdivの中に "prime"という数字のリストを表示するにはどうすればいいですか?ここで画面に私のconsole.logを表示

私は

for (var i = 1; i <= 100; i++) { 
    var invalid = false; 

    for (var j = 2; j <= i; j++) { 

     if (i % j===0 && j !== i) { 
      invalid = true; 
     } 
    } 

    if (invalid === false) { 
     console.log(i); 
    } 
} 
document.getElementById('prime').innerHTML = i; 

マイ本部

<div id="prime"> </div> 

マイコンソールouputs 1、2、3、5、7、11、... 97私のdiv出力101

書いたものです

ここではCODEPEN

おかげで

+1

質問自体ではなく、サードパーティのサイトで[MCVE]を記載してください。スタックスニペット機能では本当に簡単です... –

+1

「1、2、3、5、7、11、... 97では、私の出力は101です」 - これはコード化されたものなのですから –

答えて

2

あなたのコードの配置が間違っています。手始めに、そのようにそれを置く:あなたはそのコードを使用する場合

if (invalid === false) { 
    console.log(i); 
    document.getElementById('prime').innerHTML = i; 
} 

また、それだけでi最後値を表示します。数が明確sepetationsにするために、iの後ろに|それを修正するには、代わりに=

if (invalid === false) { 
    console.log(i); 
    document.getElementById('prime').innerHTML += i + " | "; 
} 

+=を使用最後に、私は(「」)の行を追加したいです。出力水平については

+0

お金のショット!ありがとうございました! – LOTUSMS

1

ループの各ステップで、innerHTMLを最後に更新するのではなく、更新する必要があります。また、それを上書きするのではなく、既存のコンテンツにそれぞれの新しい番号を追加する必要があります

document.getElementById('prime').innerHTML += ' ' + i; 
2
document.getElementById('prime').innerHTML += i; 

for (var i = 1; i <= 100; i++) { 
 
    var invalid = false; 
 

 
    for (var j = 2; j <= i; j++) { 
 

 
     if (i % j===0 && j !== i) { 
 
      invalid = true; 
 
     } 
 
    } 
 

 
    if (invalid === false) { 
 
     console.log(i); 
 
     document.getElementById('prime').innerHTML += "<br />" + i; 
 
    } 
 
}
<div id="prime"></div>

あなたは、既存のHTMLに追加する必要があります。

1

は、result += i + " "ですべて文字列に入れ、<div>に割り当てます。

var prime = document.getElementById("prime"), 
 
    result = ""; // Result is a string 
 

 
for (var i = 1; i <= 100; i++) { 
 
    var invalid = false; 
 

 
    for (var j = 2; j <= i; j++) { 
 

 
    if (i % j === 0 && j !== i) { 
 
     invalid = true; 
 
    } 
 
    } 
 

 
    if (invalid === false) { 
 
    result += i + " "; 
 
    console.log(i); 
 
    } 
 
} 
 

 
prime.innerHTML = result;
<div id="prime"></div>

関連する問題