Scott Tiger Tech Blog

Blog technologiczny firmy Scott Tiger S.A.

Archiwum dla Lipiec, 2016

Sztuczki i triki w języku JavaScript

Autor: Piotr Karpiuk o 21. lipca 2016

Poniżej kilka znanych mi idiomów ułatwiających programowanie w języku JavaScript. Prośba do czytelników o podawanie w komentarzach własnych propozycji.

+"15" // 15

Ale uwaga, +"15px" zwróci NaN, podczas gdy parseInt("15px") zwróci 15.


+new Date() // 1479390755672

Zamiana daty na liczbę milisekund od 1970-01-01 00:00.000.


typeof cokolwiek; // undefined

Tutaj nie wystąpi błąd, pomimo użycia niezadeklarowanej zmiennej.


var arr = Array.prototype.slice.call( arguments )
var arr = Array.from( arguments ) // ES6

Standardowy mechanizm zamiany przypominającej tablicę zmiennej arguments (parametry aktualne wywołania funkcji) na prawdziwą tablicę JavaScript.

Czytaj więcej »

Napisany w JavaScript | Brak komentarzy »

Dziwactwa JavaScriptu

Autor: Piotr Karpiuk o 18. lipca 2016

Programując w JavaScripcie i czytając różne książki na temat tego języka, natknąłem się na szereg mało intuicyjnych i dość zabawnych zachowań interpretera. Poniżej moja lista – jeśli ktoś ma inne propozycje, proszę o komentarz.

[1,3,20].sort() // [1,20,3]

Wyjaśnienie: Domyślny komparator sortuje leksykograficznie.


var a = [1,2,3];
var b = [1,2,3];
var c = "1,2,3";

a == c; // true
b == c; // true
a == b; // false

Wyjaśnienie: Zwracaj szczególną uwagę na reguły porównywania za pomocą operatorów == i ===, jeżeli porównujesz dwie wartości typów innych niż proste, takie jak obiekty (typ object, łącznie z function i array). Ponieważ wartości te są w rzeczywistości przechowywane przez odniesienie, więc oba operatory == i === po prostu sprawdzają, czy odniesienia są takie same; nie sprawdzają faktycznych wartości wskazywanych przez te odniesienia. Z kolei gdy porównujemy typ prosty (np. łańcuch) z obiektem (np. tablicą), tablica jest konwertowana do łańcucha przez po prostu połączenie przecinkami (,) wszystkich wartości.


Czytaj więcej »

Napisany w JavaScript | Brak komentarzy »

Kalambury Google

Autor: Piotr Karpiuk o 10. lipca 2016

Google znany jest ze swojego zaangażowania w projekty dotyczące sztucznej inteligencji i uczenia maszynowego. Ostatnio każdy może przetestować jak dobrze sieć neuronowa potrafi na bieżąco rozpoznawać co użytkownik rysuje myszką na ekranie: Quick, draw!.

Napisany w WWW | Brak komentarzy »

Narzędzia dewelopera w Google Chrome

Autor: Piotr Karpiuk o 5. lipca 2016

Dzisiejszy artykuł będzie narzędziach, jakie przeglądarka Google Chrome udostępnia programistom do debugowania i monitorowania aplikacji webowych, pod przyciskiem F12. Dla tych co mają dużo czasu, pełny opis możliwości jest dostępny na stronach Google’a: https://developers.google.com/web/tools/chrome-devtools/. Tutaj zakładam że Czytelnik ma już jakieś pojęcie o tych narzędziach, zapewne już z nich korzysta w jakimś zakresie i chciałby możliwie szybko poszerzyć swoją wiedzę o różne przydatne i ciekawe triki, które pojawiły się ostatnimi czasy, lub były od dawna ale nie są oczywiste.

Task Manager

Kombinacja klawiszy Shift+ESC otwiera managera zadań, w którym możemy zobaczyć zużycie zasobów komputera z rozbiciem na poszczególne zakładki przeglądarki:

Edycja drzewa DOM

Czytaj więcej »

Napisany w Google Chrome, JavaScript, Nowoczesne przeglądarki WWW, WWW | Brak komentarzy »