我是一個編寫簡單的HTML/Javascript程序的業餘程序員,最近我遇到了一些我無法解釋的東西。我有一個小程序來設定預約的開始和結束時間。這兩種格式都是HHMMSS。我對我需要的開始時間進行硬編碼,例如103000或123000,然後編寫一行代碼以添加10000以獲得結束時間。這工作得很好,直到我嘗試了073000 + 10000.結果,而不是083000(或至少83000),結果是40208.Javascript數學錯誤與前導零
我會寫問題作爲領先0的問題,但093000 + 10000 = 103000,這是我所期望的。 073000 + 10000 = 40208是怎麼回事?
我以不同的方式修復了這個程序,但是我被這個難住了。非常感謝您提供的任何解釋。
這裏是W3Schools的一些簡單的代碼產生40208作爲其相加結果:
<!DOCTYPE html>
<html>
<body>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
function myFunction() {
var x = 073000 + 10000;
document.getElementById("demo").innerHTML = x;
}
</script>
</body>
</html>
確保'「使用嚴格的」'。因爲否則'073000 = 30208' – elclanrs 2015-01-21 02:57:30
elclanrs,你可以擴大你的評論到一個答案和海報知道爲什麼會發生。我不知道或我自己的評論。 – 2015-01-21 02:59:39
@SteveMitcham,感覺自由,感覺懶惰在這裏,並沒有找到常見的dups。 – elclanrs 2015-01-21 03:02:42