Změna a přidání vlastností

Hodnoty v objektu se mohou měnit. Novou hodnotu vlastnosti přiřadíte stejně jako proměnné, pomocí =:

const zvire = { jmeno: "Micka", druh: "kočka", vek: 2 };

zvire.vek = 3;
console.log(zvire);
{ jmeno: "Micka", druh: "kočka", vek: 3 }

Novou hodnotu můžete také spočítat ze staré, stejně jako u proměnných: zvire.vek = zvire.vek + 1;, nebo zkráceně zvire.vek += 1; či zvire.vek++;.

Všimněte si rozdílu: uvnitř složených závorek, když objekt vytváříte, se vlastnost píše s dvojtečkou (vek: 2). Když ji později měníte, použijete tečku a = (zvire.vek = 3;).

Když přiřadíte hodnotu vlastnosti, kterou objekt ještě nemá, JavaScript ji přidá na konec:

const zvire = { jmeno: "Micka", druh: "kočka", vek: 2 };

zvire.majitel = "Eva";
console.log(zvire);
{ jmeno: "Micka", druh: "kočka", vek: 2, majitel: "Eva" }

To se hodí, ale znamená to také, že ani tady vás na překlep nic neupozorní. zvire.Vek = 3; nezmění vek, ale přidá novou vlastnost Vek a Micce zůstanou 2 roky.

Všimli jste si, že zvire je konstanta, a přesto se objekt v ní změnil? Je to stejné jako u polí. const znamená, že v konstantě je pořád tentýž objekt: nemůžete do ní dát jiný objekt. Vlastnosti objektu se ale měnit mohou:

const zvire = { jmeno: "Micka", druh: "kočka", vek: 2 };

zvire.vek = 3;              // v pořádku
zvire = { jmeno: "Max" };   // TypeError: Assignment to constant variable.

Pokyny

Micka právě oslavila narozeniny. Na konci programu zvyšte její vek o 1 a vypište zvire znovu. Druhý řádek by měl být { jmeno: "Micka", druh: "kočka", vek: 3 }.

Micka našla nový domov. Na konci programu přidejte objektu vlastnost majitel s hodnotou "Eva" a vypište zvire ještě jednou.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

3/9