使用Javascript parseInt()和Radix参数

shr*_*ans 24 javascript parseint radix

任何人都可以解释parseInt()函数如何工作以及Radix参数是什么?

作为案例研究,我试图掌握这段代码:

var maxChars = parseInt( formField.attr('maxlength') ? formField.attr('maxlength') : counter.text() );
Run Code Online (Sandbox Code Playgroud)

你能解释一下这段代码是如何工作的吗?为什么formField.attr('maxlength')有两次?我觉得这里运营商的使用相当令人困惑!

Radix参数如何在此示例中起作用?

Aln*_*tak 38

radix是另一个名称base,即2表示二进制,10表示十进制,16表示十六进制,在Mozilla Developer Network站点上有更详细的说明.

在您的示例中没有基数参数,因此解释器将回退到默认行为,通常将数字视为十进制,除非它们以零(八进制)或0x(十六进制)开头.

  • 很高兴有人在这里回答了这个问题.从什么时候开始使用手册?让我休息一下,这个问题是有效的,不应该被拒绝投票. (11认同)
  • Firefox,Chrome和IE 9+将`parseInt("077")`视为`parseInt("077",10)`.IE8及以下版本将其视为`parseInt("077",8)`这就是为什么你应该总是指定基数. (4认同)
  • 我坚持我所说的,“阅读手册”不是一个有效的回应。由于每个问题都可以通过阅读相应的手册来解决,因此该站点将不存在。 (3认同)
  • @JuanMendes我相信ES5将默认的原始行为弃用为八进制的前导零. (2认同)