Aritmetiske operatorer udfører aritmetik på tal (bogstaver eller variabler).
Tilføjelse
Subtraktion
Multiplikation
Eksponentiering (ES2016)
Division
Modulus (resten)
Forøgelse
Nedsættelse
En typisk aritmetisk operation opererer på to tal.
De to tal kan være bogstavelige:
let x = 100 + 50;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Arithmetic</h2>
<p>A typical arithmetic operation takes two numbers and produces a new number.</p>
<p id="demo"></p>
<script>
let x = 100 + 50;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
eller variabler:
let x = a + b;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Arithmetic</h2>
<p>A typical arithmetic operation takes two numbers (or variables) and produces a new number.</p>
<p id="demo"></p>
<script>
let a = 100;
let b = 50;
let x = a + b;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
eller udtryk:
let x = (100 + 50) * a;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>Arithmetic Operations</h2>
<p>A typical arithmetic operation takes two numbers (or expressions) and produces a new number.</p>
<p id="demo"></p>
<script>
let a = 3;
let x = (100 + 50) * a;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
Tallene (i en aritmetisk operation) kaldes operander.
Operationen (der skal udføres mellem de to operander) er defineret af en operator.
Operand | Operator | Operand |
---|---|---|
100 | + | 50 |
Operatoren addition (+
) tilføjer tal:
let x = 5;
let y = 2;
let z = x + y;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The + Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
let y = 2;
let z = x + y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Operatoren subtraktion (-
) trækker tal fra.
let x = 5;
let y = 2;
let z = x - y;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The - Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
let y = 2;
let z = x - y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Operatoren multiplikation (*
) multiplicerer tal.
let x = 5;
let y = 2;
let z = x * y;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The * Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
let y = 2;
let z = x * y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Operatoren division (/
) deler tal.
let x = 5;
let y = 2;
let z = x / y;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The / Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
let y = 2;
let z = x / y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Operatoren modulus (%
) returnerer divisionsresten.
let x = 5;
let y = 2;
let z = x % y;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The % Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
let y = 2;
let z = x % y;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
I aritmetik giver delingen af to heltal en kvotient og en rest.
I matematik er resultatet af en modulo operation resten af en aritmetisk division.
Operatoren increment (++
) øger tallene.
let x = 5;
x++;
let z = x;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The ++ Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
x++;
let z = x;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Operatoren decrement (--
) nedsætter tal.
let x = 5;
x--;
let z = x;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The -- Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
x--;
let z = x;
document.getElementById("demo").innerHTML = z;
</script>
</body>
</html>
Operatoren eksponentiering (**
) hæver den første operand til potensen af den anden operand.
let x = 5;
let z =
x ** 2;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The ** Operator</h2>
<p id="demo"></p>
<script>
let x = 5;
document.getElementById("demo").innerHTML = x ** 2;
</script>
</body>
</html>
x ** y giver det samme resultat som Math.pow(x,y)
:
let x = 5;
let z =
Math.pow(x,2);
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>Math.pow()</h2>
<p id="demo"></p>
<script>
let x = 5;
document.getElementById("demo").innerHTML = Math.pow(x,2);
</script>
</body>
</html>
Operatørprioritet beskriver den rækkefølge, som operationer udføres i et aritmetisk udtryk.
let x = 100 + 50 * 3;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>Operator Precedence</h2>
<p>Multiplication has precedence over addition.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 + 50 * 3;
</script>
</body>
</html>
Er resultatet af eksemplet ovenfor det samme som 150 * 3, eller er det det samme som 100 + 150?
Er additionen eller multiplikationen udført først?
Som i traditionel skolematematik udføres multiplikationen først.
Multiplikation (*
) og division (/
) har højere prioritet end addition (+
) og subtraktion (-
).
Og (som i skolematematik) kan forrangen ændres ved at bruge parenteser.
Når du bruger parenteser, beregnes operationerne inde i parenteserne først:
let x = (100 + 50) * 3;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>Operator Precedence</h2>
<p>Multiplication has precedence over addition.</p>
<p>But parenthesis has precedence over multiplication.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = (100 + 50) * 3;
</script>
</body>
</html>
Når mange operationer har samme forrang (som tilføjelse og subtraktion eller multiplikation og division), beregnes de fra venstre til højre:
let x = 100 + 50 - 3;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>Operator Precedence</h2>
<p>When many operations has the same precedence, they are computed from left to right.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 + 50 - 3;
</script>
</body>
</html>
let x = 100 / 50 * 3;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>Operator Precedence</h2>
<p>When many operations has the same precedence, they are computed from left to right.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 / 50 * 3;
</script>
</body>
</html>
For en komplet liste over operatørprioritetsværdier gå til:
JavaScript-operatørpræferenceværdier.