Kurs Mootools 1.2 (part 2) – liczby

styczeń 5th, 2010

Witam w kolejnej odsłonie kursu Mootools. Dzisiaj zajmę się funkcjami jakie proponuje nam framework do operowania na liczbach. Tradycyjnie wybiorę tylko te ciekawsze (moim subiektywnym zdaniem).

Na początek funkcja toInt(), oczywista oczywistość, zamienia string/liczbę na liczbę całkowitą, dodatkowo można podać w argumencie z jakiego systemu ma przeliczyć. Jeśli podamy w argumencie 2 to funkcja spodziewa się systemu dwójkowego, a więc poprawne wartości to np. 11, 101. Funkcja zachowuje się podobnie do php’owego odpowiednika, czyli jeśli trafi na znaki nie pasujące do wytycznych to obcina wyrażenie w tym miejscu, przykłady zobrazują to lepiej:

?View Code JAVASCRIPT
(123.321).toInt(); // 123
(101).toInt(2); // 5 - system dwójkowy
('123ABC456').toInt(); // 123 - obcina niepasującą część
(1122).toInt(2); // 3 - tutaj niepasująca część zaczyna się na 2, gdyż w systemie dwójkowym dozwolone są tylko 1 i 0
('b123').toInt(); // NaN
(211).toInt(2); // NaN

Funkcja toFloat() zachowuje się podobnie, z tym, że zamienia na liczbę zmiennoprzecinkową i nie przyjmuje żadnych argumentów, więc operuje tylko na systemie dziesiętnym.

Przydatne mogą się okazać funkcje limit(min, max) i round([precision]). Pierwsza z nich zwraca niezmienioną liczbę, jeśli ta łapie się w zakresie podanym w argumentach lub odpowiednio wartość minimalną (pierwszy argument) – liczba mniejsza, wartość maksymalną (drugi argument) – liczba większa niż zadany zakres. Druga funkcja zaokrągla liczbę z określoną w parametrze precyzją. Należy pamiętać, że obie funkcje operują tylko na liczbach, więc jeśli pobieracie wartości np. z pola input to najpierw trzeba wykonać rzutowanie na int lub float. Przykłady:

?View Code JAVASCRIPT
(5).limit(1,10); // 5
(11).limit(1,10); // 10
(-3).limit(1,10); // 1
(33.14).round(); // 33
(33.14).round(1); // 33.1
(33.15).round(1); // 33.2
(33.14).round(-1); // 30
(35.14).round(-1); // 40

To by było na tyle, w kolejnej części kursu zajmę się tablicami.

Kategoria: javascript

Napisz komentarz

Required

Required, nie jest publikowany

Dozwolone tagi HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Nawiąż do wpisu  |  śledź komentarze przez RSS


Kalendarz

maj 2012
P W Ś C P S N
« stycznia    
 123456
78910111213
14151617181920
21222324252627
28293031  

Ostatnie wpisy