13

我创建了一个简单的应用程序脚本,如下所示:

function testeBug() {
  Logger.log(parseInt("07"));
  Logger.log(parseInt("08"));
}

这是记录器的输出:

[13-06-19 23:09:13:130 BRT] 7.0 [13-06-19 23:09:13:130 BRT] NaN

为什么会这样?我正在使用 Google Apps 脚本

4

2 回答 2

23

您需要将基数参数传递给parseInt

parseInt("08", 10);

不这样做会导致某些浏览器将带有前导零的字符串视为 base-8,这就是您所看到的,因为 base-8 中的 07 是 7,而 08 是无效的。

于 2013-06-20T02:16:54.083 回答
1

07 是有效的八进制表示法,08 不是。

于 2013-06-20T02:14:27.297 回答