数字的反转 限制在32位

 1     var reverse = function(x) {
 2         var str=x+"";
 3         var res=[];
 4         for(var i=str.length-1;i>0;i--){
 5             res.push(str.charAt(i));
 6         }
 7         if(str.charAt(0)==="-"){
 8             res.unshift("-");
 9         }else{
10             res.push(str.charAt(0));
11         }
12         var result=parseInt(res.join(""));
13         if(result<=(-1)*Math.pow(2,31)||result>=Math.pow(2,31)-1){
14             return 0;
15         }
16         return result;
17     };

先将x转为字符串,声明一个数组,从末端开始拿,放入数组,剩下最后一位,需要检查是否为负号。是的话将它放到第一位(unshift方法)。否则的话继续放进数组。

最后将数组拼接成字符串。检查是否溢出。 

posted @ 2018-08-27 18:04  阿兰儿  阅读(165)  评论(0编辑  收藏  举报