读书人

parseInt(08)跟parseInt(09)

发布时间: 2012-10-25 10:58:58 作者: rapoo

parseInt(08)和parseInt(09)
今天收到了一个bug,大致内容如下:

ダウンロド期限、回期限を2日後の9に定すると
翌日の24にわってしまう。

?一表示は定したのまま
?表示がわってしまう
?8と9を指定したときだけ生する


打开页面,搜了一下代码,感觉很是奇怪。真的只有8和9出现这种问题。
google了一下,问题出在 parseInt 方法

parseInt 方法
返回由字符串转换得到的整数。

parseInt(numString, [radix])

参数
numString

必选项。要转换为数字的字符串。

radix

可选项。在 2 和 36 之间的表示 numString 所保存数字的进制的值。如果没有提供,则前缀为 '0x' 的字符串被当作十六进制,前缀为 '0' 的字符串被当作八进制。所有其它字符串都被当作是十进制的。

说明
parseInt 方法返回与保存在 numString 中的数字值相等的整数。如果 numString 的前缀不能解释为整数,则返回 NaN(而不是数字)。

parseInt("abc") // 返回 NaN。
parseInt("12abc") // 返回 12。
可以用 isNaN 方法检测 NaN。

所以,当没有设置第二个参数的时候,就会出现错误。
这时,午夜场告诉我之前客户提了一个「コド」告(JavaScript)20091105版,其中就有提到关于“parseInt_miss_radix”一项。今天才知道是怎么回事。
有时间一定要把报告中的每一项都细细学习一下。

读书人网 >Web前端

热点推荐