私は現在初心者であり、基本的に関数を使う方法を理解しようとすると、各入力から数値の配列を取得し、各候補の個別パーセンテージを作成する方法を理解します。 JSでは、それを使って合計を得ることができますが、各入力から何とか個々の数値を得る方法はありますか?たぶん、私はforループで間違った方向に向かうでしょう:/任意の方向またはヒントは素晴らしいでしょう。ここで数値の配列をパラメータとして収集し、パーセンテージの配列を返す関数ですか?
<div>
<label for="votes1">Votes for Candidate 1</label>
<input type="number" name="votesPerPerson" id="cand1" placeholder="Vote count">
</div>
<div>
<label for="votes2">Votes for Candidate 2</label>
<input type="number" name="votesPerPerson" id="cand2" placeholder="Vote count">
</div>
<div>
<label for="votes3">Votes for Candidate 3</label>
<input type="number" name="votesPerPerson" id="cand3" placeholder="Vote count">
</div>
<output id="totalvotes"></output>
割合は、同じ名前の配列であること
function totalVotes() {
var votes = document.getElementsByName("votesPerPerson");
var totalVotes = 0;
for(var i = 0; i < votes.length; i ++) {
totalVotes += parseInt(votes[i].value);
}
document.getElementById("totalvotes").innerHTML = totalVotes;
}
私はので、私はワットを理解することができ、このを通じて自分自身を話をするつもりですあなたがした帽子。そこで、空の配列に割り当てられたパーセンテージという変数を作成しました。その後、最初の候補=パーセント[0]のindex [0]のような各投票入力を意味するforループを使用しましたか?その後、ループを閉じました。次の行について説明できますか?申し訳ありませんが、まだ言語を学んでいます。 – logan26
あなたが気づいたように、私はあなたのループを使って各候補の投票を配列に格納します。マップ関数は非常に面白いです。なぜなら、配列を '自動'反復し、各項目に対して、パラメータで渡す関数の結果を返します(これはパーセンテージを計算します)。配列を別の配列にマップします。配列にはそれぞれの候補パーセンテージが含まれています。いくつかのドキュメント:https://www.w3schools.com/jsref/jsref_map.asp – sjahan
配列から各入力を受け取り、各投票率をdivの各候補に入れる方法はありますか?私は本当に無知です:(私はJSのフィドルに表示するために置くhttps://jsfiddle.net/rtomino/p24zhwgu/ – logan26