Assignment Operator (=
) tilldelar ett värde till en variabel:
let x = 10;
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Operators</h1>
<h2>The = Operator</h2>
<p id="demo"></p>
<script>
let x = 10;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
// Assign the value 5 to x
let x = 5;
// Assign the value 2 to y
let y = 2;
// Assign the value x + y to z:
let z = x + y;
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Operators</h1>
<h2>The Assignment (=) Operator</h2>
<p id="demo"></p>
<script>
// Assign the value 5 to x
let x = 5;
// Assign the value 2 to y
let y = 2;
// Assign the value x + y to z
let z = x + y;
// Display z
document.getElementById("demo").innerHTML = "The sum of x + y is: " + z;
</script>
</body>
</html>
Additionsoperatören (+
) lägger till nummer:
let x = 5;
let y = 2;
let z = x + y;
Prova själv →
<!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>
Multiplication Operator (*
) multiplicerar siffror:
let x = 5;
let y = 2;
let z = x * y;
Prova själv →
<!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>
Det finns olika typer av JavaScript-operatorer:
Aritmetiska operatorer
Uppdragsoperatörer
Jämförelseoperatörer
Strängoperatorer
Logiska operatörer
Bitwise operatörer
Ternära operatörer
Typ Operatörer
Aritmetiska operatorer används för att utföra aritmetik på tal:
let a = 3;
let x = (100 + 50) * a;
Prova själv →
<!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>
Tillägg
Subtraktion
Multiplikation
Exponentiering (ES2016)
Division
Modul (Division Remainder)
Ökning
Minskning
Aritmetiska operatorer beskrivs fullständigt i JS Aritmetikkapitel.
Tilldelningsoperatorer tilldelar värden till JavaScript-variabler.
Addition Assignment Operator (+=
) lägger till ett värde till en variabel.
let x = 10;
x += 5;
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arithmetic</h1>
<h2>The += Operator</h2>
<p id="demo"></p>
<script>
var x = 10;
x += 5;
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
Operator | Example | Same As |
---|---|---|
= | x = y | x = y |
+= | x += y | x = x + y |
-= | x -= y | x = x - y |
*= | x *= y | x = x * y |
/= | x /= y | x = x / y |
%= | x %= y | x = x % y |
**= | x **= y | x = x ** y |
Tilldelningsoperatörer beskrivs fullständigt i JS Uppdragkapitel.
lika med
lika värde och lika typ
inte jämnlikt
inte lika värde eller inte lika typ
större än
mindre än
större än eller lika med
mindre än eller lika med
ternär operatör
Jämförelseoperatorer beskrivs fullständigt i JS Jämförelserkapitlet.
Alla jämförelseoperatorer ovan kan också användas på strängar:
let text1 = "A";
let text2 = "B";
let result = text1 < text2;
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript String Operators</h1>
<p>All conditional operators can be used on both numbers and strings.</p>
<p id="demo"></p>
<script>
let text1 = "A";
let text2 = "B";
let result = text1 < text2;
document.getElementById("demo").innerHTML = "Is A less than B? " + result;
</script>
</body>
</html>
Observera att strängar jämförs alfabetiskt:
let text1 = "20";
let text2 = "5";
let result = text1 < text2;
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript String Operators</h1>
<p>Note that strings are compared alphabetically:</p>
<p id="demo"></p>
<script>
let text1 = "20";
let text2 = "5";
let result = text1 < text2;
document.getElementById("demo").innerHTML = "Is 20 less than 5? " + result;
</script>
</body>
</html>
+
kan också användas för att lägga till (sammanfoga) strängar:
let text1 = "John";
let text2 = "Doe";
let text3 = text1 + " " + text2;
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript String Operators</h1>
<h2>The + Operator</h2>
<p>The + operator concatenates (adds) strings.</p>
<p id="demo"></p>
<script>
let text1 = "John";
let text2 = "Doe";
let text3 = text1 + " " + text2;
document.getElementById("demo").innerHTML = text3;
</script>
</body>
</html>
Tilldelningsoperatorn +=
kan också användas för att lägga till (sammanfoga) strängar:
let text1 = "What a very ";
text1 += "nice day";
Resultatet av text1 blir:
What a very nice day
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript String Operators</h1>
<h2>The += Operator</h2>
<p>The assignment operator += can concatenate strings.</p>
<p id="demo"></p>
<script>
let text1 = "What a very ";
text1 += "nice day";
document.getElementById("demo").innerHTML = text1;
</script>
</body>
</html>
När den används på strängar kallas operatorn + för sammanlänkningsoperatorn.
Om du lägger till två siffror returneras summan, men om du lägger till ett tal och en sträng returneras en sträng:
let x = 5 + 5;
let y = "5" + 5;
let z = "Hello" + 5;
Resultatet av x, y och z blir:
10
55
Hello5
Prova själv →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript String Operators</h1>
<h2>The + Operator</h2>
<p>Adding a number and a string, returns a string.</p>
<p id="demo"></p>
<script>
let x = 5 + 5;
let y = "5" + 5;
let z = "Hello" + 5;
document.getElementById("demo").innerHTML =
x + "<br>" + y + "<br>" + z;
</script>
</body>
</html>
Om du lägger till ett nummer och en sträng blir resultatet en sträng!
logiskt och
logiskt eller
logiskt inte
Logiska operatorer beskrivs fullständigt i JS Jämförelserkapitlet.
Returnerar typen av en variabel
Returnerar sant om ett objekt är en instans av en objekttyp
Typoperatorer beskrivs fullständigt i kapitlet JS-typkonvertering.
Bitoperatorer fungerar på 32-bitars nummer.
Varje numerisk operand i operationen omvandlas till ett 32-bitars tal. Resultatet konverteras tillbaka till ett JavaScript-nummer.
Operator | Description | Example | Same as | Result | Decimal |
---|---|---|---|---|---|
& | AND | 5 & 1 | 0101 & 0001 | 0001 | 1 |
| | OR | 5 | 1 | 0101 | 0001 | 0101 | 5 |
~ | NOT | ~ 5 | ~0101 | 1010 | 10 |
^ | XOR | 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | left shift | 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | right shift | 5 >> 1 | 0101 >> 1 | 0010 | 2 |
>>> | unsigned right shift | 5 >>> 1 | 0101 >>> 1 | 0010 | 2 |
Exemplen ovan använder 4-bitars osignerade exempel. Men JavaScript använder 32-bitars signerade nummer.
På grund av detta, i JavaScript, kommer ~ 5 inte att returnera 10. Det returnerar -6.
~000000000000000000000000000000101 kommer att returnera 11111111111111111111111111111111010
Bitvisa operatorer beskrivs fullständigt i JS Bitviskapitel.