Subtraction (-) : Arithmetic operator « Operators « JavaScript Tutorial

Home
JavaScript Tutorial
 1 Language Basics 2 Operators 3 Statement 4 Development 5 Number Data Type 6 String 7 Function 8 Global 9 Math 10 Form 11 Array 12 Date 13 Dialogs 14 Document 15 Event 16 Location 17 Navigator 18 Screen 19 Window 20 History 21 HTML Tags 22 Style 23 DOM Node 24 Drag Drop 25 Object Oriented 26 Regular Expressions 27 XML 28 GUI Components 29 Dojo toolkit 30 jQuery 31 Animation 32 MS JScript
 JavaScript Tutorial » Operators » Arithmetic operator
2.1.7.Subtraction (-)

The subtraction operator (-) subtracts the number to the right of the operator from the number on the left.

When either of the operands are strings, an attempt is made to convert the strings to numbers.

For example, the line of code:

 `var resultOfSub = 25 - 102;`

would result in the value -77 being stored in the variable resultOfSub.

 ```                    ```

The subtract operator has special rules to deal with the variety of type conversions present in JavaScript:

1. If the two operands are numbers, perform arithmetic subtract and return the result.
2. If either number is NaN, the result is NaN.
3. If Infinity is subtracted from Infinity, the result is NaN.
4. If –Infinity is subtracted from –Infinity, the result is NaN.
5. If –Infinity is subtracted from Infinity, the result is Infinity.
6. If Infinity is subtracted from –Infinity, the result is –Infinity.
7. If +0 is subtracted from +0, the result is +0.
8. If –0 is subtracted from +0, the result is –0.
9. If –0 is subtracted from –0, the result is +0.
10. If either of the two operands is not a number, the result is NaN.
 2.1.Arithmetic operator 2.1.1. Compound assignment operators 2.1.2. Arithmetic Operators (+) 2.1.3. Append two strings together 2.1.4. Add string and integer together 2.1.5. + (Addition) with data type conversion 2.1.6. += (Addition Assignment) 2.1.7. Subtraction (-) 2.1.8. Multiplication (*) 2.1.9. *= (Multiplication Assignment) 2.1.10. Division (/) 2.1.11. Working With JavaScript Divide Operators 2.1.12. /= (Division Assignment) 2.1.13. Arithmetic operator in action 2.1.14. Unary Negation 2.1.15. String and addition operator (+)