JavaScript - 为什么我的parseInt返回NaN?

时间:2013-01-11 17:27:24

标签: javascript parseint

var bucketId = $.cookie('bucketId');
console.log(bucketId);

var bucketIdNumber = parseInt(bucketId, 10);
console.log("bucketIdNumber " + bucketIdNumber);

在关于bucketId的代码中返回“17”。 那么,为什么当我解析时,我会得到NaN?

2 个答案:

答案 0 :(得分:4)

如果我理解正确,上面的代码相当于:

var bucketId = '"17"';
console.log(bucketId);

var bucketIdNumber = parseInt(bucketId, 10);
console.log("bucketIdNumber " + bucketIdNumber);

在这种情况下,bucketIdNumber确实返回NaN。您需要进一步解析此cookie,并删除任何内部引号。

答案 1 :(得分:1)

bucketId可能不以整数开头。

  

如果第一个字符无法转换为数字,则parseInt()返回NaN。