Reputation: 1493
Okay I wrote a simple function where if the number > 0
return it. And if number < 0
return -number
(a negative)
In my test: when number < 0
it returns it as a positive number. Why?
numberFunc = function(number) {
if (number > 0) return number;
if (number < 0) return -number;
return 0;
}
const result = numberFunc(-5);
console.log(result);
Upvotes: 1
Views: 271
Reputation: 1517
Math.sign(number)
- Use this Math function to determine whether a number is negative, positive or Zero. It will return either a 1, -1 or 0.
console.log(Math.sign(3));
// expected output: 1
console.log(Math.sign(-3));
// expected output: -1
console.log(Math.sign(0));
// expected output: 0
console.log(Math.sign('-3'));
// expected output: -1
Ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/sign
Upvotes: 0
Reputation: 97130
Because, mathematically speaking, --1 = +1
, so passing -1
into the line below will return 1
.
if (number < 0) return -number;
You should just use Math.abs()
instead of writing your own function though.
Upvotes: 8