ECMAScript 2015 přinesl mnoho novinek, které vyústily ve velké množství vylepšení. Dnes se blíže podíváme na dvě funkce, které usnadňují život. Seznamte se s paremetry odpočinku a syntaxí rozprostření.
Operátor spread nám umožňuje rozbalit iterovatelné objekty na jednotlivé prvky. Tato funkce je opačná než ta, které jsme dosáhli pomocí ostatních parametrů. Lze jej použít na všechny iterovatelné objekty, jako jsou pole, objekty, množiny, mapy atd.
const sum = (x, y, z) => x + y + z;
const numbers = [1, 2, 3];
console.log(sum(...numbers)); // 6
Všimněte si, že syntaxe šíření vytváří "mělkou" kopii objektu, takže vlastnost "peněženka" bude zkopírována pouze jako odkaz na původní podobjekt. Pro hloubkové klonování můžete použít přístup JSON stringify/parse nebo metodu 'cloneDeep' poskytovanou Lodash v závislosti na složitosti objektu. V některých případech může být užitečná i tato metoda:
let personCopy = { ...person, wallet = {...person.wallet}};