# JavaScript modulus negative

In JavaScript, the modulus operator `%` returns the remainder of a division operation. When the dividend (the number being divided) is negative, the result of the modulus operation can be a bit confusing.

The modulus operator in JavaScript follows the sign of the dividend, which means that if the dividend is negative, the result will also be negative. Here’s an example:

``````-10 % 3 // returns -1
``````

We can add our own modulo method to JavaScript which always gives the right answer rather than getting it wrong the way JavaScript does for negative numbers.

``````
Number.prototype.mod = function(n) {
return ((this%n)+n)%n;
}``````

## JavaScript modulus negative example

Simple example code of how you could use the `mod` the method in a complete JavaScript code:

``````<!DOCTYPE html>
<html>
<body>
<script>
// Define the mod method on Number.prototype
Number.prototype.mod = function(n) {
return ((this % n) + n) % n;
}

let x = 7;
let y = -7;
let z = 12.5;

console.log(x.mod(3));
console.log(y.mod(3));
console.log(z.mod(5));

// Use the mod method in a conditional statement
if (x.mod(2) === 0) {
console.log("x is even");
} else {
console.log("x is odd");
}

</script>
</body>
</html>
``````

Output:

We also use the `mod` method in a conditional statement to check if `x` is even or odd.

Comment if you have any doubts or suggestions on this JS module topic.

Note: The All JS Examples codes are tested on the Firefox browser and the Chrome browser.

OS: Windows 10

Code: HTML 5 Version