[英]How to properly use variables and Math.round
所以我有这个javascript更新段落,但它只输出NaN
。 当我检查无var coins
会输出?
在我单击按钮之前,我,如果我在HTML中按下按钮,则每次单击它都会添加0.01
,然后我的输出最终会像这样?0.010.010.010.01.01...
知道为什么会这样吗?
var Cpc = 0.01; //Coins per Click var coins = 0; //Coins var cps = 0; //Coins per Sec setInterval(update, 10); function update() { var coinsFix = Number(Math.round(coins + 'e2') + 'e-2'); document.getElementById('Coins').innerHTML = coinsFix + ' $'; document.getElementById('CoinsB').innerHTML = coinsFix; document.getElementById('Cps').innerHTML = cps + ' Cps'; } function CPC() { function cpc() { var addCoins = coins + Cpc; return addCoins; } coins = cpc(); }
<div class="rightBox"> <div id="ClickSpot"> <button id="clickButton" onClick="CPC()"> <img src="ClickerCoin.png" alt="ClickerSpot" class="ClickerSpot"> </button> </div> </div> <div class="bottomBox"> <p id="Coins">Coins</p> <div id="CoinsB" style="display: none"></div> <p id="Cps">Cps</p> </div>
您可以使用Number.toFixed
两位数字。 结果是一个字符串。
toFixed()
方法使用定点表示法格式化数字。
var coinsFix = coins.toFixed(2);
// ^^^^^^^^^^^
var Cpc = 0.01; //Coins per Click var coins = 0; //Coins var cps = 0; //Coins per Sec setInterval(update, 10); function update() { var coinsFix = coins.toFixed(2); document.getElementById('Coins').innerHTML = coinsFix + ' $'; document.getElementById('CoinsB').innerHTML = coinsFix; document.getElementById('Cps').innerHTML = cps + ' Cps'; } function CPC() { function cpc() { var addCoins = coins + Cpc; return addCoins; } coins = cpc(); }
<div class="rightBox"> <div id="ClickSpot"> <button id="clickButton" onClick="CPC()"> <img src="ClickerCoin.png" alt="ClickerSpot" class="ClickerSpot"> </button> </div> </div> <div class="bottomBox"> <p id="Coins">Coins</p> <div id="CoinsB" style="display: none"></div> <p id="Cps">Cps</p> </div>
更改
setInterval(update, 10);
至
setInterval("update()", 10);
也
var coinsFix = Number(Math.round(coins + 'e2') + 'e-2');
至
var coinsFix = coins.toFixed(2);
尝试这个:
var Cpc = 0.01; //Coins per Click
var coins = 0; //Coins
var cps = 0; //Coins per Sec
setInterval("update()", 10);
function update() {
var coinsFix = coins.toFixed(2);
document.getElementById('Coins').innerHTML = coinsFix + ' $';
document.getElementById('CoinsB').innerHTML = coinsFix;
document.getElementById('Cps').innerHTML = cps + ' Cps';
}
function CPC() {
function cpc() {
var addCoins = coins + Cpc;
return addCoins;
}
coins = cpc();
}
<div class="rightBox">
<div id="ClickSpot">
<button id="clickButton" onClick="CPC()"> <img src="ClickerCoin.png" alt="ClickerSpot" class="ClickerSpot"> </button>
</div>
</div>
<div class="bottomBox">
<p id="Coins">Coins</p>
<div id="CoinsB" style="display: none"></div>
<p id="Cps">Cps</p>enter code here
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.