Given a signed 32-bit integer x
, return x
with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1]
, then return 0
.
Assume the environment does not allow you to store 64-bit integers (signed or unsigned).
Input: x = 123
Output: 321
Input: x = -123
Output: -321
Input: x = 120
Output: 21
-231 <= x <= 231 - 1
/**
* @param {number} x
* @return {number}
*/
var reverse = function(x) {
let t = false;
if (x < 0) {
t = true;
x = Math.abs(x);
}
let arr = Array.from(String(x))
if(arr[arr.length - 1] === "0") {
arr.pop()
}
let num = Number(arr.reverse().join(""))
if (num < -2147483648 || num > 2147483647) {
return 0
}
if (t) {
return num * -1
} else {
return num
}
};