gpt4 book ai didi

javascript - 为什么 parseInt ("09") 返回 0 而 parseInt ("07") 返回 7?

转载 作者:行者123 更新时间:2023-11-28 11:05:11 25 4
gpt4 key购买 nike

Possible Duplicate:
Workarounds for JavaScript parseInt octal bug

为什么

parseInt("09") 

返回0但是

parseInt("07") 

返回7

最佳答案

0 开头的字符串的基数可以是八进制(当未指定基数时 - 取决于浏览器)。

您正在寻找:

parseInt("09", 10)

请参阅 parseInt 的文档:

If radix is undefined or 0, JavaScript assumes the following:

  • If the input string begins with "0x" or "0X", radix is 16 (hexadecimal).
  • If the input string begins with "0", radix is eight (octal). This feature is non-standard, and some implementations deliberately do not support it (instead using the radix 10). For this reason always specify a radix when using parseInt.
  • If the input string begins with any other value, the radix is 10 (decimal).

radix 可选参数(我的示例中的第二个)的注释如下:

While this parameter is optional, always specify it to eliminate reader confusion and to guarantee predictable behavior.

关于javascript - 为什么 parseInt ("09") 返回 0 而 parseInt ("07") 返回 7?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8763362/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com