- 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
/**
* 判断正负
* 取绝对值
* 转化成数组
* 反转
* 转回字符串
* 根据正负输出结果
*/
let x = -123456
function reverse(a) {
let isPositive = x > 0
let abs = Math.abs(x)
let arr = String(abs).split('')
let midIndex = Math.ceil(arr.length / 2)
for(let i = 0; i < midIndex; i++) {
[arr[i], arr[arr.length - i - 1]] = [arr[arr.length - i -1], arr[i]]
}
let resultStr = arr.join('')
return isPositive ? Number(resultStr) : 0 - Number(resultStr)
}
console.log(reverse(x))
网友评论