JavaScript Strings

JavaScript-strings worden gebruikt om tekst op te slaan en te manipuleren.

JavaScript Strings

JavaScript-strings zijn nullen of meerdere karakters in aanhalingstekens.

Voorbeeld

var x = \"Bill Gates\";

Probeer het zelf

Je kunt zowel enkele als dubbele aanhalingstekens gebruiken:

Voorbeeld

var carname = \"Porsche 911\";
var carname = 'Porsche 911';

Probeer het zelf

Je kunt aanhalingstekens gebruiken in een string, zolang ze niet overeenkomen met de aanhalingstekens die de string omringen:

Voorbeeld

var answer = \"It's good to see you again!\";
var answer = \"He is called 'Bill'\";
var answer = 'He is called \"Bill\"';

Probeer het zelf

tekenreekslengte

ingebouwde eigenschap length kan de lengte van een tekenreeks retournerenlengte:

Voorbeeld

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;

Probeer het zelf

speciale karakters

Omdat strings omgeven moeten worden door aanhalingstekens, zal JavaScript deze string misverstaan:

var y = "China is de ouderstad van porselein, dus china en"China (China)"heeft dezelfde naam.";

Deze string zal worden gesneden tot "China is de ouderstad van porselein, dus china en".

Een oplossing om dit probleem te vermijden is om te gebruiken \ escape-caractère.

De backslash-escape-caractère maakt speciale karakters om te zetten in tekenreeksen:

Code Resultaat beschrijving
\' ' enkele aanhalingstekens
\" " Dubbelpunten
\\ \ Backslash

Voorbeeld

Reeks \" Dubbelpunten

Voorbeeld

var x = "China is de oorsprong van porselein, dus china is hetzelfde als \

Probeer het zelf

Reeks \' Voeg een aanhalingsteken toe in een string:

Voorbeeld

var x = 'Het is goed om je weer te zien';

Probeer het zelf

Reeks \\ Voeg een backslash toe in een string:

Voorbeeld

var x = "Het karakter \\ wordt backslash genoemd.";

Probeer het zelf

Escape-caractères (\)kan ook worden gebruikt om andere speciale karakters in strings in te voegen.

Andere zes geldige escape-sequenties in JavaScript:

Code Resultaat
\b Backspace
\f Page break
\n New line
\r Carriage return
\t Horizontale tab
\v Verticale tab

Deze zes escape-caractères zijn oorspronkelijk ontworpen om typemachines, telecopiëren en faxmachines te besturen. Ze hebben in HTML geen betekenis.

Langere code-regels omwonden

Voor de beste leesbaarheid zullen programmeurs meestal vermijden dat elke regel meer dan 80 karakters bevat.

Als een JavaScript-statement niet op één regel past, is de beste regelomwenteling na een operator:

Voorbeeld

document.getElementById("demo").innerHTML =
"Hallo Kitty.";

Probeer het zelf

U kunt ookIn strings

Voorbeeld

document.getElementById("demo").innerHTML = "Hallo \",
Kitty!";

Probeer het zelf

\ Deze methode is niet onderdeel van de ECMAScript (JavaScript) standaard.

Sommige browsers staan dit ook niet toe \ Ruimte na het karakter.

De veiligste manier om lange strings over meerdere regels te splitsen (maar het kan wat traag zijn) is door gebruik te maken van stringadditie:

Voorbeeld

document.getElementById("demo").innerHTML = "Hallo" + 
"Kitty!";

Probeer het zelf

U kunt geen regelomwentelingen maken met backslashes in code-regels:

Voorbeeld

document.getElementById("demo").innerHTML = \ 
"Hallo Kitty!";

Probeer het zelf

Strings kunnen ook objecten zijn

Over het algemeen zijn JavaScript-strings primaire waarden, gecreëerd via literaal schrijven:

var firstName = "Bill"

Maar strings kunnen ook via de keyword new Gedefinieerd als object:

var firstName = new String("Bill")

Voorbeeld

var x = "Bill";
var y = new String("Bill");
// typeof x zal string retourneren
// typeof y zal object retourneren

Probeer het zelf

Maak geen strings aan als objecten. Het zal de uitvoeringssnelheid vertragen.

new Kleuren kunnen de complexiteit van de code verhogen. Het kan ook enkele onverwachte resultaten opleveren:

Bij het gebruik van == Wanneer gelijke operatoren worden gebruikt, zijn gelijke strings gelijk:

Voorbeeld

var x = "Bill";             
var y = new String("Bill");
// (x == y) is true, omdat x en y dezelfde waarde hebben

Probeer het zelf

Bij het gebruik van === Operatoren, wanneer gelijke strings niet gelijk zijn, omdat === Operatoren moeten zowel type als waarde gelijk zijn.

Voorbeeld

var x = "Bill";             
var y = new String("Bill");
// (x === y) is false, omdat x en y verschillende typen zijn (string en object)

Probeer het zelf

Zelfs erger. Objecten kunnen niet worden vergeleken:

Voorbeeld

var x = new String("Bill");             
var y = new String("Bill");
// (x == y) is false, omdat x en y verschillende objecten zijn

Probeer het zelf

Voorbeeld

var x = new String("Bill");             
var y = new String("Bill");
// (x === y) is false, omdat x en y verschillende objecten zijn

Probeer het zelf

Let op het verschil tussen (x==y) en (x===y).

JavaScript-objecten kunnen niet worden vergeleken, de vergelijking van twee JavaScript zal altijd false.