webrebel html css javascript laravel oop php mysql wordpress kurz

JavaScript - bodkočiarky a iné zrady

napísal , 27 Sep 2010 [ JavaScript ]

Ktorý spôsob indentácie (zarovnávania? uhm..) používate?

function meow ($meows) {
  // oh noes, god just killed a kitten :(
}
function meow ($meows) 
{
  // happy kitty, whee
}

Asi je zrejmé, ktorý preferujeme my ;) Douglas Crockford by nám ale jednu vylepil, keby to vidí. Prečo? Hah.. funny story..

Vo vynikajúcej prednáške JavaScript: The Good Parts sa okrem iného rozoberá problém so semicolon insertion. Pre tých čo nevedia - JavaScript je jazyk divný, čo sa prejavuje napr. tým, že vkladá bodkočiarky tam, kde má dojem, že sme ich zabudli. Snaha sa síce cení, ale občas mu to dobre ujde. Keby napíšeme...

return
{
  ok: false;
};

...riskujeme, že JS pridá bodkočiarku za return; - zvyšok sa zmení na normálny block kódu, veci v ňom budú vyhodnotené (a ignorované), bodkočiarka značí prázdny výraz, return vráti nič a program frčí ďalej bez chybovej hlášky. A to veru neni dobre.

Video je plné podobných rád. Čomu sa vyvarovať, čoho sa chopiť... hm... jedine, žeby som to mal odtiaľto. Alebo z tejto série? Nevermind, všetky sú skvelé a každý, kto sa o tento jazyk zaujíma by si ich mal pozrieť. A vy, čo ste JavaScript zavrhli, by ste to mali vidieť 2x. Crockford rozpráva s istotou človeka, ktorý presne vie čo hovorí a je to fascinujúce počúvanie. A dozviete sa napríklad aj prečo HTML tak smrdí :)

napísal , 27 Sep 2010

4 komentáre

komentuj
  1. Andrej Herich [ Utorok 28.9.2010, 15:47 ]

    Prvý, pretože tak je to v Jave. A žiadna medzera medzi názvom funkcie a parametrami.

    Používate tento spôsob zápisu aj pri príkazoch if, while, atď.?

  2. yablko [ Utorok 28.9.2010, 17:29 ]

    možno je to odporúčaný spôsob, ale v konečnom dôsledku je to na individuálnych preferenciách (prípadne preferenciách tímu...)

    yep, používam to všade, pripadá mi to výrazne prehľadnejšie

  3. psycho [ Nedeľa 10.10.2010, 14:33 ]

    ja preferujem syntax z jazyka brm, pretoze sa da nakonfigurovat, aby sa zobrazoval tak ako cloveku ulahodi najlepsie, teda aj s {}, ale defaultne tak ludsky:

    meow:
    // code