当我这样做时:
var x = parseInt("–2147483648");
console.log(x);
我得到的值是:
NaN
为什么会这样?
我想测试一个数字是否在C(int)的范围内,所以我在做上面的事情,但是它不起作用。另外,我想为 C (long) 做这个,有办法吗?
例如: 如果我这样做:
var x = parseInt("-9223372036854775808");
console.log(x);
现在,我知道 (-+)2^53 是 Javascript 中数字的限制。有没有其他方法可以测试表单中的给定值是否实际上在 long 或 int 范围内?
最佳答案
它应该可以正常工作,问题是您使用了错误的字符,连字符 –
与连字符 -
:
var x = parseInt("-2147483648");
console.log(x);
如果您复制/粘贴它,您会发现它现在可以工作了。
关于大负数上的 Javascript parseInt 给出 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17825781/