我有8位數的列表項,其中大部分都以兩個零開頭。當我想調用函數並傳遞它的唯一編號時,幾乎總是當它以「00」開始時,它會得到一些看似隨機的數字。我仍然不知道如何或爲何發生。 以下是JSFiddle上的示例。當調用函數whith以零開始的參數時獲取隨機數
HTML:
<div id="working">
<input type="button" onclick="sample(00119001)" value="00119001" /><br/>
<input type="button" onclick="sample(00113008)" value="00113008" /><br/>
<input type="button" onclick="sample(68745696)" value="68745696" /><br/>
<input type="button" onclick="sample(11112222)" value="11112222" /><br/>
</div>
<div id="notworking">
<input type="button" onclick="sample(00113004)" value="00113004" /><br/>
<input type="button" onclick="sample(00113003)" value="00113003" /><br/>
<input type="button" onclick="sample(00106002)" value="00106002" /><br/>
<input type="button" onclick="sample(00120003)" value="00120003" /><br/>
</div>
<div id="show"></div>
JS:
function sample(a) {
var b = "0000000"+a;
b = b.substr(b.length-8);
document.getElementById("show").innerHTML="Input: "+a+" | Output: "+b;
}
爲了澄清這個問題: 我期望能獲得在在參數來調用它的功能相同的號碼,但對於一些原因,有時我會得到完全不同的數字。
那一個做了訣竅。謝謝:) http://jsfiddle.net/agapetos/EbpbX/4/ – agapetos
第四種情況下工作 - 只有1和2(11112222)。這是因爲它是8位數字組合,其中第一個不是零? – agapetos
不以0開頭的數字被解釋爲十進制。這就是「正常」的解釋:除非你想將它解釋爲八進制數,否則你從不會以0開始數字文字。 –