What does the *= or -=operator mean?
As an example, the tutorial has this code:
milesTraveled = endingMileage -= startingMileage;
amountOwed = milesTraveled *= reimburseRate;
Why are *=
and -=
used instead of the usual multiplication and subtraction operators? Are they any different?
1
2 answers
Why are multiplication and subtraction operators used instead of the usual ones?
*=
and-=
.
You can read them literally "multiply and assign" and "subtract and assign".
That is, after performing these operations, not only the values of the variables milesTraveled
and amountOwed
, but also the variable endingMileage
will change.
Example with the specified operations:
let startingMileage;
let endingMileage;
let milesTraveled;
let amountOwed;
let reimburseRate;
startingMileage = 1;
endingMileage = 3;
reimburseRate = 10;
milesTraveled = endingMileage -= startingMileage;
console.log("milesTraveled:" + milesTraveled );
amountOwed = milesTraveled *= reimburseRate;
console.log("startingMileage:" + startingMileage +
", endingMileage:" + endingMileage +
", milesTraveled:" + milesTraveled +
", amountOwed:" + amountOwed);
Compound operators are "expanded" as follows:
milesTraveled = endingMileage -= startingMileage;
Converted to
milesTraveled = (endingMileage = endingMileage - startingMileage);
And expand the brackets
endingMileage = endingMileage - startingMileage;
milesTraveled = endingMileage;
milesTraveled = milesTraveled * reimburseRate;
amountOwed = milesTraveled;
Meaning - a shorter entry.
2
Author: nick_n_a, 2018-07-25 11:31:43