Вы можете попробовать этот способ также с помощью Math.sign () , чтобы проверить, является ли число положительным, отрицательным или нулевым.Затем используйте флаг, например, от negative
до false
, если Math.sign(num)
возвращает отрицательное значение, т.е. <1
, затем установите его на true
.Также используйте Math.abs () , чтобы сделать его положительным всегда, прежде чем изменить его на reverse()
.Наконец, поставьте знак перед числом на основе флага negative
.
function reverseNumber(num) {
pos_neg = Math.sign(num);
negative = false;
if (pos_neg < 1) {
// treat as negative value
negative = true;
num = Math.abs(num);
}
num = num + "";
expression = Number(num.split("").reverse().join(""));
return negative ? - expression : expression ;
}
console.log(reverseNumber(1000));
console.log(reverseNumber(50000));
console.log(reverseNumber(-784))