2016-12-08 15 views
-3

这是我输入的代码,用于查找在名为“txt”的文本框中输入的数字的反转,并且表单名称为“calc2”。我无法弄清楚问题所在。我在代码中获取了一个错误,作为NaN,用于反转数字。为什么?

function rev() { 
    var n, rn, r; 
    n = parseInt(calc2.txt.value); 
    rn = 0; 
    while(n!==0) { 
     rn = rn * 10; 
     rn = rn + r % 10; 
     n = n/10; 
    } 
    calc2.ans.value = rn; 
} 

Chrome会显示以下警告:

calc2.js:62 The specified value "NaN" is not a valid number. 
The value must match to the following regular expression: 
    -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?rev 
    @ calc2.js:62onclick 
    @ home.html?txt=511:54 
+0

什么是线62? –

+7

'rn = rn + r%10;' - 'r'永远不会被定义。 – tymeJV

+0

看起来'r'是一个错字,应该是'n'? – Cerbrus

回答

0

做这样的事情

function rev() { 
    var n, rn; 
    n = parseInt(calc2.txt.value); 
    rn = 0; 
    while(n!==0) { 
     rn = rn * 10; 
     rn = parseInt(rn + n % 10, 10); 
     n = parseInt(n/10, 10); 
    } 
    calc2.ans.value = rn; 
} 

工作实例https://jsfiddle.net/pff7vw6x/

+0

谢谢,这对我们有所帮助。你能解释一下代码吗? –

相关问题