Direct naar de hoofdinhoud
Module 2 · Les 1 van 45/32 in de cursus~8 min
Modulelessen (1/4)

Tekenreeksen en sjabloonletterlijke waarden

Strings zijn reeksen karakters. In JavaScript kun je ze afbakenen op drie manieren, allemaal gelijkwaardig aan de motor, maar met één superkracht gereserveerd voor backticks:

JS
'single quotes';
'double quotes';
`backticks — template literals`;

Enkele en dubbele aanhalingstekens zijn uitwisselbaar: gebruik wat u toelaat vermijd het ontsnappen van het andere teken in uw tekst:

JS
'L\'isola'; // the apostrophe needs to be escaped
"L'isola"; // here it doesn't
"He said \"hi\"";
'He said "hi"';

Ontsnap aan karakters

Binnen elke string kunt u "niet-afdrukbare" tekens invoegen met een backslash:

  • \n — nieuwe regel
  • \t — tabblad
  • \\ — een letterlijke backslash
  • \' / \" — letterlijk enkele/dubbele aanhalingstekens
JS
console.log('line 1\nline 2');
// line 1
// line 2

Sjabloonletterlijke waarden: de syntaxis die u standaard wilt gebruiken

Backticks ontgrendelen twee dingen die onmogelijk zijn met de andere scheidingstekens:

  1. Meerdere regels zonder escape-tekens: letterlijke nieuwe regels zijn toegestaan.
  2. Interpolatie: binnen ${ … } kunt u elke JS-expressie plaatsen en de waarde ervan wordt in het resultaat geplakt.
JS
const nome = 'Anna';
const eta = 28;

const messaggio = `Ciao ${nome}, hai ${eta} anni.
Fra un anno ne avrai ${eta + 1}.`;

De expressie binnen ${ … } hoeft geen eenvoudige naam te zijn: dat kan het zijn alles dat een waarde produceert, inclusief functieaanroepen en operators.

Aaneenschakeling met +

Historisch gezien werden snaren gecomponeerd met +. Het werkt nog steeds en is nuttig in zeldzame gevallen (bijvoorbeeld als je een string in meerdere stappen opbouwt):

JS
const a = 'Ciao';
const b = 'mondo';
a + ', ' + b + '!'; // 'Ciao, mondo!'

Probeer het

Oefening#js.m2.l1.e1
Pogingen: 0Laden…

Gegeven `naam = 'Luca'` en `leeftijd = 30`, stelt u met een sjabloon letterlijk de string 'Luca ha 30 anni.' samen. (precies deze tekst) als laatste uitdrukking.

Editor laden…
Toon hint

Gebruik backticks en ${...} interpolatie om waarden in de string in te voegen.

Oplossing beschikbaar na 3 pogingen

Oefening beoordelen

Oefening#js.m2.l1.e2
Pogingen: 0Laden…

Gegeven twee prijzen `p1 = 7,5` en `p2 = 3,20`, retourneer als laatste uitdrukking de string 'Totaal: 10,7 euro'.

Editor laden…
Toon hint

Binnen ${...} kun je elke expressie plaatsen, inclusief p1 + p2.

Oplossing beschikbaar na 3 pogingen