整数反转
字符串
直接的处理:
function reverse (x: number): number {
let value = parseInt(x.toString().split('').reverse().join(''))
if (x < 0) {
value = -value
}
return value > Math.pow(2, 31) - 1 || value < Math.pow(-2, 31) ? 0 : value
}
数学计算
function reverse (x: number): number {
let res = 0
while(x) {
const last = x % 10
res = res * 10 + last
if (res > Math.pow(2, 31) - 1 || res < Math.pow(-2, 31)) {
return 0
}
x = ~~(x / 10)
}
return res
}