V předchozím cvičení jsme pomocí cyklu vypisovali všechny špatně zadané znaky do konzole. Nyní tento kód přepíšeme tak, aby místo výpisů do konzole vyrobil pole objektů, obsahující informace o každém znaku. Například pro vstup 462748/312
chceme jako výsledek obdržet takovéto pole.
[
{ char: '4', digit: true },
{ char: '6', digit: true },
{ char: '2', digit: true },
{ char: '7', digit: true },
{ char: '4', digit: true },
{ char: '8', digit: true },
{ char: '/', digit: false },
{ char: '3', digit: true },
{ char: '1', digit: true },
{ char: '2', digit: true },
];
Napište tedy funkci validateCharacters
, která na vstupu dostane text a vrátí pole ve formátu jako výše. Postupujte následovně:
-
Na začátku funkce si vytvořte proměnnou
result
, do které uložte prázdné pole. -
Projděte vstup znak po znaku jako v předchozim cvičení. Místo výpisu do stránky však pro každý znak vyrobte odpovídající objekt a vložte jej do pole
result
pomocí metodypush
. -
Na konci funkce pole
result
vraťte pomocíreturn
. -
Vyzkoušejte vaši funci zavolat třeba se vstupy
'123č56q8y7'
a'7060201236'
a výsledná pole vypište pro otestování do konzole (pomocíconsole.log
).> validateCharacters('123č56q8y7') [ { char: '1', digit: true }, { char: '2', digit: true }, { char: '3', digit: true }, { char: 'č', digit: false }, { char: '5', digit: true }, { char: '6', digit: true }, { char: 'q', digit: false }, { char: '8', digit: true }, { char: 'y', digit: false }, { char: '7', digit: true }, ]; > validateCharacters('7060201236') [ { char: '7', digit: true }, { char: '0', digit: true }, { char: '6', digit: true }, { char: '0', digit: true }, { char: '2', digit: true }, { char: '0', digit: true }, { char: '1', digit: true }, { char: '2', digit: true }, { char: '3', digit: true }, { char: '6', digit: true }, ];