Přejít k navigační liště

Zdroják » Zprávičky » Pro JavaScript není mezera jako mezera

Pro JavaScript není mezera jako mezera

Zprávičky ‐ ‐ JavaScript, Různé ‐

Pokud používáte v JavaScriptu regulární výrazy pro práci s řetězci, můžete se setkat s podivnými odlišnostmi implementace metaznaku s (whitespace – mezery, tabelátory apod.). Všechny prohlížeče správně vyhodnotí znaky jako U+0020 (mezera), U+000A (LF) nebo U+000B (vertikální tabulátor). Co je překvapivější, tak některé prohlížeče (Safari do verze 3.2.1, IE 6–8) do s nezapočítají nerozdělitelnou mezeru U+00A0. V tom, jak vyhodnocují znaky nad U+2000, kde se vyskytují různé tenké mezery, vlasové mezery, čtvrtčtverčíkové mezery, „em“ a „en“ mezery a další, panuje už naprostý chaos. Přehledně se touto problematikou zabývá článek Whitespace deviations.

Komentáře

Odebírat
Upozornit na
guest
1 Komentář
Nejstarší
Nejnovější Nejvíce hlasů
Daniel Steigerwald

Jen bych si dovolil pro úplnost doplnit, že implementace regulárních výrazů má více nepřesností, než pouze whitespaces.

http://blog.stevenlevithan.com/…-and-unicode
http://blog.stevenlevithan.com/…m-javascript

a pokud někdo hodně spoléhá na regexy, doporučuji: http://xregexp.com/

AI přepracovala 300 tisíc řádků Street Fighteru III. Hlídal ji hash každého snímku

‐ AI ‐
Komentáře: 0
AI agenti za tři týdny přepracovali dekompilovaný kód Street Fighteru III: 3rd Strike a podle metriky CodeScene dosáhli nejvyššího možného skóre kvality. Shoda s původní verzí se ověřovala přehráváním herních záznamů a porovnáním hashe herního stavu po každém snímku. Taková kontrola je přísnější než běžné testy, zachytí ale jen to, co do hashe vstupuje.

DressCode si vezme váš PHP kód do parády

‐ PHP ‐
Komentáře: 0
Napsat nové pravidlo do PHP CS Fixeru nebo PHP_CodeSnifferu je za trest. David Grudl to zkusil kvůli jedinému řádku `use function` a místo pravidla z toho vznikl nový nástroj DressCode, postavený nad stromem, který ze zdrojáku nic nezahodí. Ukážeme si, jak ho nasadit, nastavit a zapojit do práce AI agenta.