6 komentářů k článku Koření z JavaScriptové zahrádky uklidní Javascriptařovy nervy…:

  1. Jakub Vrána

    Vkládání středníků

    Všude se píše (a opakuje to i odkázaný článek), že parsery vloží středník na místo, kde by jinak došlo k chybě. To ale nevysvětluje, proč se vloží tady:

    return // sem se vloží
    { a: 5 } 

    V tomto kódu přece k žádné chybě nedojde, což je v rozporu s tvrzením, které to má vysvětlovat. Zná někdo skutečný způsob, podle kterého parsery středník vkládají?

    1. Martin MalýAutor příspěvku

      Re: Vkládání středníků

      Podle odkázaného článku by měl parser vyhodnotit {a:5} jako blok kódu; proč ne jako objekt, to je mi záhadou. V tom bloku kódu bude label a: a výraz „5“.

      Druhý možný výklad je v té poznámce tam: The JavaScript parser does not „correctly“ handle return statements which are followed by a new line. To by naznačovalo, že parser krom „míst, kde by mohla být chyba“ nějak specificky pracuje i s „místy kde je konec řádku“. Ale zdrojáky JS kvůli tomu procházet nebudu ;)

      1. Pavel Křivánek

        Re: Vkládání středníků

        Norma ECMAScriptu speciálně upravuje automatické vkládání středníků u ++, –, continue, break, return a throw.

Napsat komentář

Tato diskuse je již příliš stará, pravděpodobně již vám nikdo neodpoví. Pokud se chcete na něco zeptat, použijte diskusní server Devel.cz

Zdroj: https://www.zdrojak.cz/?p=2059