JavaScript parseInt IE Nan错误

iea*_*lle 1 javascript internet-explorer parseint

我有JavaScript的功能:

function calc(num) {
    if (num <= 22) {
            return parseInt(num);
    } else {
            num += '';
            var curr = 0;
            for (var i = 0; i < num['length']; i++) {
                    curr += parseInt(num[i]);
            };
            return curr;
    };
};
Run Code Online (Sandbox Code Playgroud)

此函数计算新数字,如:如果我的数字大于22,则此函数返回新数字,它是其子数的总和(例如28> 22 => return(2 + 8)).

此功能在Firefox的伟大工程,但我发现了"南"错误在Internet Explorer与数字比22越大所以这个问题必须在"其他".

怎么了?

Ale*_* K. 7

您需要在IE中num.charAt(i)访问字符串字符String[offset].

(s = "qwe"; alert(typeof s[1] === 'undefined')true)