Pular para o conteúdo principal
eLearner.app
Módulo 2 · Lição 2 de 46/32 no curso~10 min
Lições do módulo (2/4)

Métodos de string

Strings in JS have dozens of methods but in practice you'll use ten of them. They are all functions that don't modify the original string (strings are immutable) but return a new value.

Length, case, search

JS
'JavaScript'.length; // 10
'JavaScript'.toUpperCase(); // 'JAVASCRIPT'
'JavaScript'.toLowerCase(); // 'javascript'

'JavaScript'.includes('Script'); // true
'JavaScript'.startsWith('Java'); // true
'JavaScript'.endsWith('!'); // false

'JavaScript'.indexOf('a'); // 1    (first occurrence, from 0)
'JavaScript'.indexOf('zzz'); // -1   (not found)

length is a property (no parentheses), the others are methods — functions invoked with (…).

Extracting portions with slice

slice(start, end) returns the sub-string between the given positions (end excluded). Negative indices count from the end.

JS
'abcdefgh'.slice(0, 3); // 'abc'
'abcdefgh'.slice(3); // 'defgh'   (omitting end = to the end)
'abcdefgh'.slice(-2); // 'gh'      (last two)

Splitting and rejoining

split(separator) divides a string into an array of pieces. The reverse is join(...) on the array:

JS
'rosso,verde,blu'.split(','); // ['rosso','verde','blu']
['rosso', 'verde', 'blu'].join(' | '); // 'rosso | verde | blu'

Replacing

replace changes the first occurrence, replaceAll changes all of them:

JS
'a-b-c'.replace('-', '_'); // 'a_b-c'
'a-b-c'.replaceAll('-', '_'); // 'a_b_c'

Trim: remove whitespace at the edges

trim() removes spaces (and newlines, tabs) at the start and end. Indispensable when you receive input from a form.

JS
'   ciao  '.trim(); // 'ciao'

Try it

Exercício#js.m2.l2.e1
Tentativas: 0Carregando…

Given an email `' Mario.Rossi@Example.com '`, normalize it: strip the surrounding spaces and lowercase it. The last expression must evaluate to 'mario.rossi@example.com'.

Carregando editor…
Mostrar dica

You can chain the methods: first trim(), then toLowerCase().

Solução disponível após 3 tentativas

Review exercise

Exercício#js.m2.l2.e2
Tentativas: 0Carregando…

Given the string `'rosso,verde,blu,giallo'`, return as the last expression the NUMBER of colors (i.e. 4).

Carregando editor…
Mostrar dica

split(',') gives you an array; .length gives you the number of elements.

Solução disponível após 3 tentativas