4.7. Other Operators

4.7.1. The String Operator +

So far we have only seen operators that work on operands which are of type number, but there are operators that work on other data types as well. In particular, the + operator can be used with string operands to concatenate, or join together two strings.

Example

"Launch" + "Code" evaluates to "LaunchCode"

Let's compare + used with numbers to + used with strings.

Example

1
2
console.log(1 + 1);
console.log("1" + "1");

Console Output

2
11

This example demonstrates that the operator + behaves differently based on the data type of its operands.

Warning

So far we have only seen examples of operators working with data of like type. For the examples 1 + 1 and "1" + "1", both operands are of type number and string, respectively.

We will explore such "mixed" operations in a later chapter.

4.7.2. Compound Assignment Operators

A common programming task is to update the value of a variable in reference to itself.

Example

1
2
3
4
let x = 1;
x = x + 1;

console.log(x);

Console Output

2

Line 2 may seem odd to you at first, since it uses the value of the variable x to update x itself. This technique is not only legal in JavaScript (and programming in general) but is quite common. It essentially says, "update x to be one more than its current value."

This action is so common, in fact, that it has a shorthand operator, +=. The following example has the same behavior as the one above.

Example

1
2
3
4
let x = 1;
x += 1;

console.log(x);

Console Output

2

The expression x += 1 is shorthand for x = x + 1.

There is an entire family of such shorthand operators, known as compound assignment operators.

Compound Assignment Operators

Operator name

Shorthand

Meaning

Addition assignment

a += b

a = a + b

Subtraction assignment

a -= b

a = a - b

Multiplication assignment

a *= b

a = a * b

Division assignment

a /= b

a = a / b