Transkript z lekce „Bracket Notation“
>> Bianca Gandolfo: Jak je to s těmi závorkami, že? Jste obeznámeni s tím, že vidíte závorky?
>> Bianca Gandolfo: Jo? To je spíš to, co vás napadne, když si představíte pole, že? Vidíte osobu
se závorkami a nějakou hodnotou, že? V tomto případě je to řetězec. Ale může to být objekt, může to být funkce, může to být opravdu cokoli.
Pokud ukládáte pole funkcí, pravděpodobně děláte něco špatně. Ale je to možné.
>> Bianca Gandolfo: Takže ve skutečnosti se zde děje to, že naše 0 je pouze zřetězena. A tady to je, je to prostě vlastnost.
>> Bianca Gandolfo:
>> Bianca Gandolfo: Ale proč tedy nemůžeme říct osoba.0?
Takže proto musíme použít závorky. Takže závorky používáme, když v podstatě nemůžeme použít tečku. A kdy nelze použít tečku? V podstatě tehdy, když hodnota nemá být řetězcovým literálem, že? Takže například name, název vlastnosti je name, pardon, lidi.
A tak řeknete .name to, uloží se jako name, jo? Když potřebuješ donutit do řetězce nebo je to prostě neplatný, jo, jsou tam nějaký neplatný znaky, můžeš si to vymyslet, co můžu vytvořit? Jaký je platný název proměnné? To je způsob, jak o tom přemýšlet. Pokud je to platné jméno proměnné, pravděpodobně by se dalo použít s tečkovým zápisem.
Pokud není, pak se to zachytí ve vašem parseru. Proto používáme závorky, prostě proto, že je to číslo.
>> Bianca Gandolfo:
>> Bianca Gandolfo: A to je vše:
>> Bianca Gandolfo:
>> Bianca Gandolfo: Jsme tu všichni? A co tohle? Takže máme svou osobu, máme jméno, máme prosbu.
Já bych nikdy, říká paní Bílá.
>> Bianca Gandolfo:
>> Já bych nikdy, říká paní Bílá: Co se stane s naší datovou strukturou? Jaká šipka musí jít kam? Co třeba šedý zip na samém konci?“
>> Mluvčí 2: jméno do Nikdy bych.“
>> Bianca Gandolfo:
>> Mluvčí 2: Ne.
>> Bianca Gandolfo: Myslíš, že by jméno šlo do I would never? Dávám ti druhou šanci.
>> Mluvčí 2: Osoba do Já bych nikdy.
>> Bianca Gandolfo: Zavřít
>> Bianca Gandolfo:
>> Řečník 3: V současné době k tomu nemáme připojeno něco, čemu se říká prosba.
>> Bianca Gandolfo: Ano, takže když používáme závorky, nepředpokládáme, že se jedná o řetězec. Takže to může být název proměnné, může to být výraz.
Kdybys chtěla, mohla bys v závorce zavolat funkci. Opět to asi není dobrý nápad, ale je to platné. Nevypíše vám to chybu, takže ano, musíme to změnit. Takže aktualizujeme plea prostřednictvím řetězce wouldShe. A tak si všimněte, že název vlastnosti je zde wouldShe a ne plea.
Kdybychom chtěli, aby to bylo plea, jak bychom to mohli udělat? Co třeba tady uprostřed s tou černou?“
>> Mluvčí 4: Můžete se na to zeptat ještě jednou? Promiňte, procházela jsem si to.
>> Bianca Gandolfo: Jistě, žádný problém. Tak jsem právě řekla, všimněte si, že byJe to název vlastnosti.
Ale někdo by mohl očekávat, že to bude plea, nicméně není to tak. Kdybychom chtěli, aby to bylo plea, co bychom mohli potřebovat změnit?“
>> Mluvčí 4: Podívejte, muselo by to být nějak na druhé straně znaku rovnítka. Osoba, bude se to muset přiřadit, protože teď je to-
>> Bianca Gandolfo:
>> Mluvčí 4: No, mohli bychom udělat osoba.prosba.
>> Bianca Gandolfo: Mm-hm, jo, takže můžete použít tečkovou notaci, rozhodně, a přiřadit ji. Takže tečkový zápis to donutí vytvořit řetězec, že?“
>> Bianca Gandolfo:
>> Mluvčí 3: Dejte kolem toho uvozovky?
>> Bianca Gandolfo: Dejte uvozovky kolem. Takto ručně vytvoříte řetězec, že ano, místo toho, abyste ho vynucovali. Úžasné.
>> Bianca Gandolfo:
>> Mluvčí 5: Mám dotaz.
>> Bianca Gandolfo: Tak a je to: Ano.
>> Řečník 5: Takže mohla byste se vrátit k tomu druhému slajdu? Myslím, že je to něco jako .
Takže v tomto příkladu nejprve nastavíte proměnnou plea na byShe. A později jste použil tu věc se závorkami. Kdybys přeskočil ten první krok nastavení var plea na wouldShe, co by se pak stalo na tom posledním řádku s osobou plea v závorce?“
>> Bianca Gandolfo:
No, vlastně to uděláme jako první, ale vyhodnotí to tu závorku. Řekne to, že plea je proměnná, takže kolem ní nejsou žádné uvozovky ani nic podobného. Není to číslo. Vypadá to, že je to proměnná. Takže se to nejdřív podívá do oboru proměnné a podívá se to do všech oborů, ke kterým je to připojené, o čemž budeme mluvit později, a zjistí, že tam žádná plea není.
A tak to spustíme a uvidíme, co nám to řekne.
>> Mluvčí 5: Vyhodí to tedy chybu, když se snažíš takto přiřadit?
>> Bianca Gandolfo: Píše se tam: Ano, plea není definováno. Myslím, že je dobré se ty chyby naučit.
>> Bianca Gandolfo:
>> Mluvčí 6: Tak jim ukaž, jak se to opravuje pomocí uvozovek v závorce.
>> Bianca Gandolfo:
>> Bianca Gandolfo: Mm-hm, takže když to vidíte, tak prostě dáme ty naše uvozovky kolem a pak jsme spokojení.
>> Bianca Gandolfo: Tady je naše malá specialita ohledně pole. Máme naši malou délku, která je nula, což je zajímavé, že? Protože v tomto poli máme nějaké věci.
>> Bianca Gandolfo:
>> Bianca Gandolfo: Zajímavé, dobře:
>> Bianca Gandolfo: Skvělé, takže když něco vytvoříme pomocí závorek, můžeme to pak vyhledat pomocí tečky? Vypadá to rozumně. Dokážete si představit, že byste si museli pamatovat, jak je něco definováno? Dovedete si to představit, mnoho souborů a atd. atd. si nemusíte pamatovat, jak je to definováno. Může to jít oběma směry. Stačí si pamatovat základní pravidla. Takže ukážu na některé lidi a odhalíme pravidla, která jsme zatím objevili o objektech a polích.
Jste připraveni? Dobře, takže začneme pěkně od začátku. Jaké pravidlo jsme se díky tomuto cvičení naučili o objektech v polích?“
>> Mluvčí 6: Pole je typ objektu. Jsou k němu již připojeny některé metody.
>> Bianca Gandolfo: To je podle mě asi nejhustší. Jo, a pak tady.
Půjde to takhle, jen abyste se připravili.
>> Mluvčí 6: Řetězec vlastností lze předávat pomocí tečkového zápisu nebo závorek a uvozovek.
>> Bianca Gandolfo:
>> Bianca Gandolfo: .
>> Řečník 6: Můžeme se vrátit?
>> Bianca Gandolfo:
>> Mluvčí 2: Možná budu trochu opakovat. Ale použití bodového zápisu nutí k řetězci, kde závorka nemusí.
>> Bianca Gandolfo: A proč nemůžeme použít tečkové číslo? Třeba tečka nula, proč to nefunguje?“
>> Bianca Gandolfo: Proč to nemůžeme udělat, když do řetězce vnutíme tečku, že jo, když řekneme, osoba.0, že jo? Odpověď je v dalším řádku.
>> Mluvčí 2: Neexistuje žádná proměnná s názvem 0.
>> Bianca Gandolfo:
>> Mluvčí 3: Je to proto, že 0 není řetězec. Vnímá se jako číslo?
>> Bianca Gandolfo:
>> Bianca Gandolfo: No, můžeš z čísla udělat řetězec, ne? Důvodem je, že je to prostě neplatná syntaxe. Začne to vyhodnocovat jako číslo a zmate ho to.
A tak ti to vyhodí syntaktickou chybu. Takže tečkový zápis můžeme používat jen u znaků, které nejsou neobvyklé. A když myslím neobvyklé, myslím tím, zda můžete vytvořit název proměnné začínající tímto znakem, který tento znak obsahuje, že? Takže můžete použít podtržítko, ale ne pomlčku.
To jsou věci, které se tak nějak musíte naučit metodou pokus-omyl. Ale pochopte, že pokud používáte tečkový zápis, používáte znak, který je trochu neobvyklý, můžete dostat syntaktickou chybu. A pokud se tak stane, řešením je? Promiňte, psala jsem poznámky.
Co bylo-
>> Mluvčí 3: Změňte to na řetězec.
>> Bianca Gandolfo: Ano, dejte to do závorky a dejte kolem toho uvozovky. Jo, super, abych věděla, že to tam vrtám. Ale tohle je nejčastější věc, na které se lidé zaseknou a která může trvat dlouho. Ale když se naučíte pravidla, je to docela jednoduché.
Je tam, já nevím, hrstka pravidel, možná pět pravidel, která je třeba znát. Ale zdá se, že vy to chápete.