JS - String
Tekenreeksen
Elke waarde tussen enkele of dubbele aanhalingstekens wordt in JavaScript beschouwd als een tekenreeks. Dit betekent dat 1 een getal is, maar '1' is een tekenreeks. Voor een tekenreeks retourneert typeof de tekenreeks 'string':
var s = "Barack Obama"; typeof s; "string" var s = 'Barack Obama 123 5.87'; typeof s; "string"
Met de + string operator kan je tekenreeksen aan elkaar plakken:
var voornaam = 'Barack'; var familienaam = 'Obama'; var naam = voornaam + ' ' + familienaam;
String conversies
Wanneer je tekenreeks met nummers (bijvoorbeeld ' 1') als een operand in een rekenkundige bewerking gebruikt, wordt de tekenreeks achter de schermen omgezet in een getal . Dit werkt voor alle rekenkundige bewerkingen behalve de optelling, vanwege de dubbelzinnigheid met de + string operator.:
var tekst = '1'; tekst = 3 * tekst; typeof tekst; "number" tekst; 3 var tekst = '1'; tekst++; typeof tekst; "number" tekst; 2
Er is een luie manier om willekeurige tekenreeks met getallen te converteren naar een getal bestaat erin die te vermenigvuldigen met 1:
var tekst = "100"; typeof tekst; "string" tekst = tekst * 1; typeof tekst; "number"
Als de conversie mislukt krijg je NaN:
var tekst = '1001 nachten'; tekst * 1; NaN
Je kan dus een string converteren naar een getal door de string te vermenigvuldigen met 1. Het omgekeerde kan ook. Je kan een string converteren naar een getal door een er een lege string aan te plakken:
var getal = 1; typeof getal; "number" getal = "" + getal; "1" typeof getal; "string"
Hier heb je een voorbeeld van hoe anders JavaScript is, vergeleken met bijvoorbeeld C#. Voor C# is zoiets not done!
Escape karakters
Escape karakter | Outputs |
\' | single quote als je enkelvoudige aanhalingsteken binnen de tekenreeks wilt gebruiken, 'ontsnap' je ze zodat JavaScript niet denkt dat ze het einde van de tekenreeks betekenen |
\" | double quote als je dubbele aanhalingsteken binnen de tekenreeks wilt gebruiken, 'ontsnap' je ze zodat JavaScript niet denkt dat ze het einde van de tekenreeks betekenen. |
\\ | backslash: als je een backslash in de tekenreeks wilt gebuiken, 'ontsnap' je die met een tweede backslash |
\n | new line |
\r | carriage return |
\t | tab |
\b | backspace |
\f | form feed |
\u | \u gevolgd door een karaktercode laat je toe Unicode te gebruiken |