将string 转int

Posted 没离开过

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将string 转int相关的知识,希望对你有一定的参考价值。

/**
 * @param {string} str
 * @return {number}
 */
var myAtoi = function(str) {
    
        str = str.replace(/^(\s|\u00A0)+/,‘‘).replace(/(\s|\u00A0)+$/,‘‘);

        if( (str[0] !== ‘-‘ && str[0] !== ‘+‘) && isNaN(str[0])){
            return 0;
        }
        var num = [];
        var i =0;
        if(str[0] === ‘-‘ || str[0] === ‘+‘){
            i =1;
        }
        for(; i < str.length ; i++){
            if(isNaN(str[i]) || str[i] === ‘ ‘){
                break;
            }
            num.push(str[i]);
        }
        var int_num = 0;
        var ten = 1;
        while(num.length > 0){
            var tmp = num.pop() * ten;
            int_num += tmp;
            ten *= 10;
        }
        if(str[0] === ‘-‘){
            int_num = 0 - int_num;
        }
        if(int_num > 2147483647){
            return 2147483647;
        }
        if(int_num < -2147483648){
            return -2147483648;
        }

        return int_num;
};

主要看异常处理情况:

1.前后空格的处理

2.+,- 符号的处理

3.要求字符串后有数字以外的字符仍然能够正常工作,例如‘452fjse‘ 输出 452

4.超过int 型数值范围处理 最大值2147483647 和最小值 -2147483648 。

以上是关于将string 转int的主要内容,如果未能解决你的问题,请参考以下文章

CSP核心代码片段记录

JAVA中怎么把int型数据转为BigInteger型数据

js中怎么把对象转成string

java中int怎样转换成char

Failed to convert property value of type ‘java.lang.String‘ to required type ‘int‘ for property(代码片段

怎样将int类型的数组转换成string