思想
判断溢出方式:看 res 是否大于 最大值/10,如果等于,判断后面那个数是否大于7(计算的最大数的个位数)
看 res 是否小于 最小值/10,如果等于,判断后面那个数是否小于8(计算的最小数的个位数)
function resvese(num){
let res = 0;
const MAX_VALUE = parseInt(Math.pow(2, 31)) - 1;
const MIN_VALUE = - parseInt(Math.pow(2, 31));
let temp;
while (num !== 0){
temp = num % 10;
if (res > parseInt(MAX_VALUE/10) || (res === parseInt(MAX_VALUE/10) && temp > 7)){
return 0
}
if (res < parseInt(MIN_VALUE/10) || (res === parseInt(MIN_VALUE/10) && temp < -8 )){
return 0
}
res = res * 10 + temp
num = parseInt(num / 10)
}
return res;
}```