1 00:00:00,844 --> 00:00:01,922 A jsme zpátky! 2 00:00:01,922 --> 00:00:05,152 Dnes tady máme program, který obsahuje objekt Winstona. 3 00:00:05,152 --> 00:00:08,660 Zobrazuje ale pouze Winstonův věk. 4 00:00:08,660 --> 00:00:09,870 Je to kvůli tomu, 5 00:00:09,870 --> 00:00:12,699 že vám chci ukázat, jak můžeme Winstonův věk změnit. 6 00:00:12,699 --> 00:00:15,572 Protože dříve nebo později musí Winston zestárnout. 7 00:00:16,284 --> 00:00:17,347 Pojďme si připomenout, 8 00:00:17,347 --> 00:00:20,268 jak by takový kód vypadal s použitím jednoduchých proměnných. 9 00:00:20,268 --> 00:00:22,695 Napíšeme: "var winstonAge = 19". 10 00:00:22,695 --> 00:00:27,088 A když to chceme změnit, napíšeme: "winstonAge = 20". 11 00:00:27,088 --> 00:00:29,855 Tím dojde ke změně hodnoty uvnitř proměnné. 12 00:00:29,855 --> 00:00:32,454 Pro změnu vlastnosti objektu to funguje velmi podobně. 13 00:00:32,454 --> 00:00:38,577 Stačí napsat: "winston.age = 20". 14 00:00:38,577 --> 00:00:43,609 Tím jsme změnili hodnotu vlastnosti věk, která je uložene v objektu pro Winstona. 15 00:00:44,631 --> 00:00:46,370 Pojďme se podívat, jestli to funguje. 16 00:00:46,370 --> 00:00:49,060 Vezme textový příkaz a vložíme ho sem dolů. 17 00:00:49,060 --> 00:00:51,410 Změníme souřadnici y a máme to! 18 00:00:51,410 --> 00:00:52,903 Winston zestárnul. 19 00:00:55,893 --> 00:00:59,316 Vlastně jenom přičítáme hodnotu 1. 20 00:00:59,316 --> 00:01:01,139 Zkusme to udělat víc jako programátoři. 21 00:01:01,139 --> 00:01:07,309 Napíšeme: "winston.age = winston.age + 1". 22 00:01:07,309 --> 00:01:10,860 Programu tímto říkáme, aby vzal předcházející hodnotu jeho věku, 23 00:01:10,860 --> 00:01:16,041 přičetl k ní 1 a poté ji uložil ve vlastnosti věku. 24 00:01:16,903 --> 00:01:20,947 A to by mělo znamenat, že se k předcházející hodnotě přičte 1. 25 00:01:23,386 --> 00:01:25,330 Funguje to, Winston má 21 let! 26 00:01:27,484 --> 00:01:31,294 A Jak víte, pro přičítaní 1 k proměnné máme zkratku. 27 00:01:31,294 --> 00:01:34,209 A úplně stejná zkratka se používá i pro vlastnosti objektu. 28 00:01:34,209 --> 00:01:36,382 Můžete napsat: "winston.age++". 29 00:01:37,556 --> 00:01:39,617 Teď zkontrolujeme, jestli nám to funguje. 30 00:01:41,277 --> 00:01:44,997 Ano, funguje, a udělalo to úplně to samé jako tento řádek. 31 00:01:44,997 --> 00:01:49,144 Je to ale zkratka, takže toho nemusíme tolik psát. 32 00:01:49,144 --> 00:01:53,330 Když se na celý kód podíváte, uvidíte, že by se hodilo použít cyklus. 33 00:01:53,330 --> 00:01:56,097 Používáme pořád dokola ten stejný kód. 34 00:01:56,097 --> 00:01:58,810 A jediné, co se mění, je přičítaní 1 k Winstonovému věku. 35 00:01:58,810 --> 00:02:02,527 A měníme polohu y, aby byla na jiné řádce. 36 00:02:03,018 --> 00:02:07,068 S pomocí cyklu by ukázat stárnoucího Winstona bylo mnohem jednodušší. 37 00:02:07,068 --> 00:02:09,422 Nemuseli bychom k tomu používat zbytečně moc kódu. 38 00:02:09,422 --> 00:02:13,497 Řekněme, že chceme cyklus, který zobrazí Winstonův věk až do 40. 39 00:02:13,497 --> 00:02:16,590 Winston nechce být starší než 40, protože by pak měl vrásky. 40 00:02:16,590 --> 00:02:19,250 Pak bychom mu museli říkat "Wrinkleston". 41 00:02:20,320 --> 00:02:21,774 Napíšeme tedy while cyklus: 42 00:02:21,774 --> 00:02:27,498 Napíšeme: "while(winston.age <= 40). 43 00:02:27,498 --> 00:02:32,245 A tady uvnitř zobrazíme Winstonův věk. 44 00:02:32,245 --> 00:02:37,586 A pokaždé k jeho věku přičteme 1. 45 00:02:37,586 --> 00:02:41,108 Funguje to, ale všechno se ukládá na sebe. 46 00:02:41,108 --> 00:02:43,280 Musíme proto pokaždé změnit polohu y. 47 00:02:43,280 --> 00:02:51,140 Napíšeme: "winston.age krát 20 minus 200". 48 00:02:51,140 --> 00:02:53,250 Nebo minus 300. 49 00:02:53,250 --> 00:02:58,241 Anebo nastavíme minus 350. 50 00:02:58,241 --> 00:03:03,471 Vypadá to dobře, takže starou část kódu smažeme. 51 00:03:03,471 --> 00:03:07,144 Nyní můžeme vidět, jak Winston stárne. 52 00:03:07,144 --> 00:03:10,283 And ne tak moc, že by z něj byl "Wrinkleston". 53 00:03:11,933 --> 00:03:14,101 Teď už víme, jak změnit věk. 54 00:03:14,101 --> 00:03:17,493 Můžeme do Winstonova objektu přidat další informace. 55 00:03:17,493 --> 00:03:22,261 Jak bude Winston stárnout, potká ve třiceti programátorku. 56 00:03:22,261 --> 00:03:24,843 Bude se jmenovat Winnefer a vezme si ji za ženu. 57 00:03:24,843 --> 00:03:28,979 A ne, nevezme si ji jen kvůli jejímu skvělému jménu. 58 00:03:28,979 --> 00:03:33,349 Takže stačí přidat vlastnost, napíšeme: ‘winston.‘. 59 00:03:33,349 --> 00:03:39,338 Poté napíšeme klíč vlastnosti, a tím bude: ‘.wife = "Winnefer"‘. 60 00:03:39,338 --> 00:03:44,045 Chceme ale, aby tuto ženu našel až bude v dobrém věku pro ženění. 61 00:03:44,045 --> 00:03:47,858 Napíšeme, že se bude rovnat 30. 62 00:03:47,858 --> 00:03:53,138 A teď už jen tento kód přesuneme sem. 63 00:03:53,138 --> 00:03:58,869 Teď už má ženu, jsou šťastni a nakonec mají taky nějaké děti. 64 00:03:58,869 --> 00:04:02,477 Řekněme, že se bude jednat o věk s hodnotou 32. 65 00:04:02,477 --> 00:04:05,415 Do objektu přidáme děti, abychom s nimi mohli pracovat. 66 00:04:05,415 --> 00:04:08,458 A samozřejmě to budou dvojčata, protože jsou velmi produktivní. 67 00:04:08,458 --> 00:04:16,870 Winstonovy dvojčata se budou jmenovat "Winston, JR" a "Winstonia". 68 00:04:16,870 --> 00:04:21,851 Skvělá rodinka se skvělými jmény. 69 00:04:21,851 --> 00:04:23,355 Takže jak vidíte, 70 00:04:23,355 --> 00:04:28,405 můžeme jednoduše přidávat vlastnosti jako řetězce, pole a všechno ostatní. 71 00:04:28,405 --> 00:04:33,091 Až tento cyklus dojede do konce, winston.age bude mít hodnotu 40, 72 00:04:33,091 --> 00:04:41,096 bude mít ženu Winnefer a dvojčata, která jsou polem se dvěma jmény. 73 00:04:41,096 --> 00:04:42,923 Je to skvělý cyklus. 74 00:04:42,923 --> 00:04:45,943 Pokud se vám ale nelíbí, jak příběh s Winstonem končí, 75 00:04:45,943 --> 00:04:50,178 můžete program upravit podle sebe a udělat svou vlastní verzi budoucnosti. 76 00:04:50,178 --> 00:04:53,733 Teď už víte, jak změnit a upravit vlastnosti objektu.