jqueryを使用して単純なRPGゲームを作成していますが、JSが式を実行できる数値に文字列を変換する際に問題があります。だから、私は各キャラクターのクリックイベントがあるので、ユーザーが1つを選択すると、そのキャラクターのスパンのステータスにhtmlが変わります。私はそれらの番号を取って、私の攻撃ボタンのためにそれらを使用したいと思います。jQueryを使ってhtmlのテキストを式に変換するにはどうすればよいですか?
私も4
HTMLで
<div class="row">
<div class=" col-md-3 "><button id="atk">Attack!</button></div>
</div>
<div class="row">
<p class=" col-md-2 ">Health: <span id="Hp"></span></p>
<p class=" col-md-2 ">Damage Output: <span id="Damage"></span></p>
<p class=" col-md-2 ">Enemy Health: <span id="eHp"></span></p>
<p class=" col-md-2 ">Enemy Damage Output: <span id="eDamage"></span></p>
</div>
のjQueryを、ボタンがクリックされるたびに、メインキャラクターのダメージを
$("#atk").click(function(){
foeHp= ($("#eHp").html());
foeDmg= ($("#eDamage").html());
mainHp= ($("#Hp").html());
mainDmg= ($("#Damage").html());
// console.log(foeDmg);
var enemyHp = eval(foeHp + (mainDmg -4));
「eval」はここでは完全に不当に思われるようです。なぜあなたはそれを使用していますか?文字列を数値に変換する必要がある場合は、 'parseInt'を使います。 – Carcigenicate
個々の値に対して 'Number()'関数、unary plus演算子、 'parseFloat()'、 'parseInt()'を使うと、好きな数学演算を行うことができます。 – nnnnnn