Scott Tiger Tech Blog

Blog technologiczny firmy Scott Tiger S.A.

Sztuczki i triki w języku JavaScript

Autor: Piotr Karpiuk o czwartek 21. Lipiec 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.


var a = "Witaj świecie";
if( ~a.indexOf( 'aj' ) ) { // true
  ...
}

To jest to samo co if(a.indexOf('aj')>=0), ponieważ operator bitowy ~ to z grubsza -(x+1).


var a = 49.6;
~~a == a | 0 // true

Zarówno ~~a jak i a|0 obcinają liczbę do postaci 32-bitowej liczby całkowitej; można to potraktować jako odpowiednik Math.floor(), przynajmniej dla niezbyt dużych liczb dodatnich.


!!a

Wymuszenie konwersji wartości zmiennej a na wartość logiczną.


var s = "Witaj świecie";
var matches = s.match( /[aeiou]/g );
matches // ['i', 'a', 'i', 'e', 'i', 'e']

Share and Enjoy:
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Śledzik
  • Blip
  • Blogger.com
  • Gadu-Gadu Live
  • LinkedIn
  • MySpace
  • Wykop

Zostaw komentarz

XHTML: Możesz użyć następujących tagów: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>