Funkcja to czy obiekt, któż to wie?

W dużym projekcie występuje często spotykany problem. Mianowicie, gdy funkcję traktujemy jako konstruktor obiektu, a nie powinniśmy i przed wywołaniem funkcji dopisaliśmy operator new.

Co wtedy? Jak zachowa się aplikacja? Jak to sprawdzić? Jak zapobiec?

Jeżeli pattern użyty w aplikacji korzysta z kontekstu to sytuacja może się skomplikować. Ciało funkcji, w którym jest odniesienie się do aktualnego kontekstu będzie różny w zależności w jaki sposób skorzystamy z definicji funkcji.

Czytaj więcej »

Bind() obok call() i apply() jako piękna natura języka

Zasada działania metody bind() opiera się na istniejących metodach call() i apply().
Jednak bind() różni się od wymienionych wyżej metod. Zmienia kontekst wywołania funkcji, którą przekażemy w pierwszym parametrze. Ważne jest to, że jej nie uruchamia, tak jak robią to metody call() i apply(). Kolejne parametry będą przekazane do określonej funkcji w procesie jej inicjalizacji.

Czytaj więcej »

Haki CSS na Internet Explorer’a

Przychodzi taka chwila w życiu każdego webmaster’a kiedy nasze rozwiązania nie wyglądają spójnie na wszystkich przeglądarkach. Najczęstszym przypadkiem, gdzie layout strony odbiega od rzeczywistego pojawia się na przeglądarkach z Redmond.

Przeglądarka Internet Explorer jest bardzo nieobliczalną przeglądarką jakiej świat nigdy nie zapomni.
Zamieszczam duży zbiór kruczków jakie mogą być przydatne w „poprawianiu” layoutu.

Czytaj więcej »

Wykrywanie wersji interpretera JavaScript

Jak wykryć wersję interpretera JavaScript w przeglądarce?
Każda platforma zawiera inne dobrodziejstwa języka. Niektóre platformy zawierają natywne rozwiązania, których w starszych wersjach silnika brakuje. Z pomocą przychodzi tutaj pklib, który uzupełnia zbiór funkcji z nowszych wersji interpretera w jednym miejscu.

Czytaj więcej »

ECMAScript 5 – kiedy będzie codziennością?

ECMAScript 5 – nowe standardy, nowe możliwości!

Gdyby programista korzystał na co dzień tylko z najnowszych technologii świat byłby „zbyt” idealny. Niestety, ale zdarza się ciągle bardzo często kiedy to klienci do listy kompatybilnych przeglądarek naszego oprogramowania nadal dodają tak stare przeglądarki jak Internet Explorer 6.x, 7.x oraz 8.x.

Czytaj więcej »

DevMeetings: Middle-End w oparciu o ServerSide JS [Relacja Live]

Dzisiaj DevMeetings zawitał do Krakowa!

Tematem będzie middle-end, czyli coś co jest pomiędzy backend’em, a frontend’em.
Skład zawiera programistów doświadczonych w nodejs, ale także raczkujących w tej tematyce.

Czytaj więcej »