Subtracts the value of one expression from another or provides unary negation of a single expression.

## Syntax

```
result = number1 - number2;
```

## Parameters

*result*

Any numeric variable.

`number`

Any numeric expression.

`number1`

Any numeric expression.

`number2`

Any numeric expression.

## Remarks

In Syntax 1, the **-** operator is the arithmetic subtraction operator used to find the difference between two numbers. In Syntax 2, the **-** operator is used as the unary negation operator to indicate the negative value of an expression.

For Syntax 2, as for all unary operators, expressions are evaluated as follows:

If applied to undefined or

`null`

expressions, a run-time error is raised.Objects are converted to strings.

Strings are converted to numbers if possible. If not, a run-time error is raised.

Boolean values are treated as numbers (0 if false, 1 if true).

The operator is applied to the resulting number. In Syntax 2, if the resulting number is nonzero,

*result*is equal to the resulting number with its sign reversed. If the resulting number is zero,*result*is zero.

## Requirements

Supported in the following document modes: Quirks, Internet Explorer 6 standards, Internet Explorer 7 standards, Internet Explorer 8 standards, Internet Explorer 9 standards, Internet Explorer 10 standards, Internet Explorer 11 standards. Also supported in Store apps (Windows 8 and Windows Phone 8.1). See Version Information.

## See Also

Subtraction Assignment Operator (-=)

Operator Precedence

Operator Summary (JavaScript)