给你一个 32 位的有符号整数 x ,返回 x 中每位上的数字反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。
<script> function reverse(x) { var resultArr = []; // 将传入的参数转换为字符串 var str = x.toString(); // 对字符串进行遍历 反转添加到resultArr中 for (var i = 0; i < str.length; i++) { resultArr.unshift(str[i]); } // 若输入为负数 if (str[0] == '-') { resultArr.unshift('-'); } // 将resultArr拼接为字符串 再用parseInt转为整数 var resultNum = parseInt(resultArr.join('')); if (resultNum <= Math.pow(-2, 31) || resultNum >= Math.pow(2, 31) - 1) { return 0 } return resultNum; } console.log(reverse(-123)); </script>