Komentáře k článku
„Temná strana“ JavaScriptu

I když JavaScript používáte řadu let, můžete v něm narazit na místa, která vás překvapí, a kterým nerozumíte. Na některá taková temná místa si posvítíme v tomhle článku, zejména na logické hodnoty a operátory, operátor rovnosti, středníky aj.
NaN Watman
Nieco aj ohladom JS ale vtipnejsie :-)
https://www.destroyallsoftware.com/talks/wat
Re: NaN Watman
Pardon , link je aj v clanku
je noc a uz nevnimam poriadne
jssss
Me zajima kdo bude uklizet tohle svinstvo za par let.
Moc pekný
Výborný článek, jako člověk co už pár let JavaScript dělá jsem nevěděl jestli se smát nebo plakat… Nakonec zvítězil smích a shledávám tento článek vtipnější než komixy na rootu. Navíc pěkné ucelené shrnutí. Díky!
Re: Moc pekný
Podobné informace má http://bonsaiden.github.com/JavaScript-Garden/
Re: Moc pekný
Díky za odkaz, tento článek jde víc do šířky, zabývá se i objekty a funkcemi. Hned na začátku mě pobavilo
2..toString();
.Re: "Temná strana" JavaScriptu
Something, something, something, dark side. Something, something, something, javascript.
Tranzitivita ==
[] == 0. Check. 0 == ‚0‘. Check. ‚0‘ != []. Ch- wait, what?!
Vygenerovana tabulka pro operator == :
http://zero.milosz.ca/
Re: "Temná strana" JavaScriptu
http://wtfjs.com/
rtfm
člověk si k tomu nepřečte manuál a pak se diví..
nejasny ==
Neni mi v sekci 2 u operatoru == jasne nasledujici :
‚2‘ == false
‚true‘ == false
‚false‘ == false
Dle pravidel by melo dojit k prevodu na cisla, skutecne k tomu dochazi a tedy by mely vysledky byt 2 == 0, NaN == 0 a NaN == 0, vse nerovnosti. Pokud tedy autor mel na mysli, ze vsechny vyrazy jsou pravdive, pak je v clanku chyba. Pokud je to jinak tak mi to prosim vysvetlete. Dekuji :-)
Re: nejasny ==
Máte samozřejmě pravdu. Autor měl na mysli nerovnosti
které zbrkle přepsal na rovnosti. Děkuji za pozorné čtení.
JSpowa
Zamyšlení patří k V8 Engine a z něho stoupající nodeJS.
JS je jiný, také jsem na něj nadával, nesnášel ho. Pak jsem v něm objevil zlatý grál programovaní, pište to co myslíte, jak to myslíte. (Lehko se řekne, pár let přemýšlení v php,c++ .. se těžko „vypne“)
Noční můra programátora je to, že 15tiletá holka se naučí js imho o hodně rychleji než člověk zvyklý na ifdef hell. JS má takový, řekněme přirozenější přístup k jádru věci.
Kup housky, nebo rohlíky .. nakup.push(kram[‚housky‘] || kram[‚rohliky‘]) .. to je celkem intuitivní ne ?
Vše je objekt, tak je to i v reálném světě ne ? Tak proč ne… undefined je instance objektu v globalnim prostoru, ale tak je to podle mě přirozené, ne ?
Prodejte mi „bla“ .. to nevedeme
JS poskytuje spoustu nebezpečných, možná i klasického pohledu nelogických možností, ale tam je to zase o tom, kdo to píše .. prasit se dá vše.
Stačí se třeba podívat na ten humus mootools, to je správná cesta do pekel. Extendovat prototypy základních objektů, humus totální. Nebo třeba totálně „krásné“ věšení eventů $(‚.blah‘).live(event,cb{e}), kde si člověk automaticky zaprasí celý document.
Re: JSpowa
věšení eventů v jQuery ..
Re: JSpowa
Co máš přesně proti rozšiřování prototypů základních objektů? Pokud nerozšiřuješ přímo Object.prototype (což by teda dělalo neplechu, bylo by to na úplně všech objektech), tak to podle mě nic špatného není. Občas se mi prostě hodí moje vlastní metoda na polích, funkcích, řetězcích atp.