Programování v jazyce JavaScript

Podobné dokumenty
Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

Programování v jazyce JavaScript

JavaScript. Konverze na boolean. JavaScript 1.5 ECMAScript ECMA-262, 3 rd edition

Regulární výrazy. Vzory

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni!

Úvod do programování 6. hodina

PHP - úvod. Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky.

Regulární výrazy. jemný úvod. Miloslav Brada

Úvod do programovacích jazyků (Java)

Regulární výrazy. Filtry grep, sed a awk.

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

Programování v PHP. Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze. Další možnosti formulářů

Práce s textem. Třída Character. Třída Character. Třída Character. reprezentuje objekty zapouzdřující hodnotu typu char (boxing / unboxing)

Název Live prez Sear enta Maps

Sada 1 - PHP. 03. Proměnné, konstanty

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

Algoritmizace a programování

LabView jako programovací jazyk II

- znakové konstanty v apostrofech, např. a, +, (znak mezera) - proměnná zabírá 1 byte, obsahuje kód příslušného znaku

Algoritmizace a programování

JavaScript benchmark řetězce, regulární výrazy a asociativní pole

Přednáška 4. Regulární výrazy. Filtry grep, sed a awk. Úvod do Operačních Systémů Přednáška 4

7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd

Úvod Informace o prostředí Práce se soubory Regulární výrazy Konec. Programování v C# Soubory a regulární výrazy. Petr Vaněček 1 / 27

Úvod do programování. Lekce 1

Jazyk C# a platforma.net

A7B38UOS Úvod do operačních systémů. 6. Cvičení. Příkazy sed a awk

Ajax - úvod. Klíčové pojmy: Ajax, skriptování na straně klienta a serveru, objekt XMLHttpRequest, DOM model.

Výčtový typ strana 67

Koláčky, sezení. Martin Klíma

Lekce 2. Řetězce a práce s nimi. Vstup a výstup. C2184 Úvod do programování v Pythonu podzim 2016

PROGRAMOVÁNÍ V SHELLU

Paměť počítače. alg2 1

Jazyk C# (seminář 3)

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

NPRG030 Programování I, 2017/18 1 / :22:16

Tvorba výrazu: speciální znaky shellu se uvádějí do apostrofů jednotlivé části výrazu se oddělují mezerou

Programovací jazyk Pascal

NA CO SI DÁT POZOR V JAVASCRIPTU? Angular.cz

Generické programování

Přednáška 7. Celočíselná aritmetika. Návratový kód. Příkazy pro větvení výpočtu. Cykly. Předčasné ukončení cyklu.

FUNKCE 3. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika

Proměnné a parametry. predn_08.odt :00:38 1

PHP. Čtvrtek 8. září. Čtvrtek 15. září. Anonymní test znalostí

Programování v C++ 1, 5. cvičení

Mgr. Vlastislav Kučera lekce č. 2

Mgr. Vlastislav Kučera přednáška č. 2

Tabulkový procesor. Základní rysy

Úvod do UNIXu. Okruh č. 4 - vi, regulární výrazy, grep a sed. Jakub Galgonek. verze r2. inspirováno materiály Davida Hokszy

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

5. Ř etězce (třída String)

Střední odborná škola a Střední odborné učiliště, Hořovice

Neměnné objekty. Tomáš Pitner, upravil Marek Šabo

Jazyk C# a platforma.net

Programování. Bc. Veronika Tomsová

Visual Basic for Applications

První kapitola úvod do problematiky

Inovace bakalářského studijního oboru Aplikovaná chemie

Základy programování Proměnné Procedury, funkce, události Operátory a podmínková logika Objekt Range a Cells, odkazy Vlastnosti, metody a události

Algoritmizace a programování

Object Pascal je přísně typový procedurální jazyk, který umožňuje jak strukturované, tak objektově orientované programování.

DSL manuál. Ing. Jan Hranáč. 27. října V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v

Algoritmizace a programování. Terminálový vstup a výstup

C2110 Operační systém UNIX a základy programování

Další příklady. Katedra softwarového inženýrství. Katedra teoretické informatiky, Fakulta informačních technologii, ČVUT v Praze. Karel Müller, 2011

Jazyk C++, některá rozšíření oproti C

7. Datové typy v Javě

typová konverze typová inference

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

1 Webový server, instalace PHP a MySQL 13

5 Přehled operátorů, příkazy, přetypování


PB161 Programování v C++ Proudy pro standardní zařízení Souborové proudy Paměťové proudy Manipulátory

Znaky. IAJCE Přednáška č. 10. každému znaku je nutné přiřadit nějaké číslo (nezáporné přímé mapování znak <->

Jazyk C# - přístup k datům

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech

Programování v C++ 1, 6. cvičení

Programování v C++, 2. cvičení

9. přednáška - třídy, objekty

Desetinná čísla. pro celá čísla jsme používali typ int. pro desetinná čísla používáme typ double

Jazyk C# (seminář 5)

Vytváření a použití knihoven tříd

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Textové, datumové a časové funkce

Definice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky

1. Úvodní informace. BI-EP1 Efektivní programování Martin Kačer

Jazyk C# (seminář 6)

Rozšíření ksh vůči sh při práci s proměnnými

MS EXCEL_vybrané matematické funkce

Pear - hruška Systém pro implementaci a distribuci znovupoužitelných komponent (v PHP) Strukturovaná knihovna open-source (PHP) skriptů Systém pro dis

PŘETĚŽOVÁNÍ OPERÁTORŮ

Transkript:

Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Standardní objekty BI-JSC Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti P. Štěpán PHP BI-PHP, výpis 9 1/6

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body> <h1>standardni objekty</h1> <script type="text/javascript"> // dalsi metody pro praci s polem var jazyky = ["Java","PHP","C#"]; // spojovani poli var jazyky2 = jazyky.concat("python",["javascript","perl"]); // alert(jazyky2); // casti pole var jazyky3 = jazyky2.slice(2); // od pozice 2 do konce // slice pro zaporne parametry odecte se od delky pole // alert(jazyky2); // alert(jazyky3); var jazyky4 = jazyky2.slice(1,4); // od 1 do 3!! // alert(jazyky4); // metoda splice (vkladani a nahrazovani) jazyky = ["Java","PHP","C#","Python"]; // vlozi na pozici 2 // jazyky2 = jazyky.splice(2,0,"javascript","perl"); // alert(jazyky); // vymaze a vlozi (na pozici 2) 2. parametr - vymazavana delka // jazyky2 = jazyky.splice(2,1,"javascript","perl"); // alert(jazyky2); // vymazane // alert(jazyky); // upravene pole // vymaze od dane pozice dany pocet prvku jazyky2 = jazyky.splice(2,1); // alert(jazyky2); // alert(jazyky); P. Štěpán PHP BI-PHP, výpis 9 2/6

// typ Date // aktualni datum (mozno udat pocet msec 1.1.1970 - parametr): var now = new Date(); // alert(now); var april = Date.parse("4/1/2001"); // americke datum; pocet msec // mozne i jine anglosaske formaty // alert(april); // 1.6.2011 10:32:30 (mesic od 0!!) // (jen prvni dva parametry povinne) var cerven = Date.UTC(2011,5,1, 10,32,20); // alert(new Date(cerven)); // stejne parametry Date, ale mistni cas // alert(new Date(cerven)); //.tostring,.tolocalstring - mirne odlisnosti v prohlizecich // alert(cerven.valueof()); // valueof = cislo-pocet msec pro datum // formatovaci metody.todatestring,.tolocaldatestring, //.tolocaltimestring, toutgstring - opet se lisi // mnoho metod get, set (getmonth(), setminutes(min),... // typ RegExp - regularni vyrazy // literalovy zapis /vzor/priznaky // priznaky(nepovinne):g - globalni, m - multiline, i - ignore case var pattern = /a(b+(c))/i; // lze pouzit i konstruktor RegExp var pattern2 = new RegExp("a(b+(c))","i"); // pozor na metaznaky // a \ v retezci - zdvojene // vlastnosti typu RegExp: global,ignorecase,multiline, // lastindex,source // lastindex - index, od ktereho bude hledana shoda. Implicite 0 // source - puvodni vyraz ve tvaru literalu // alert(pattern.lastindex); // metody RegExp // metoda exec vrati pole vysledku (+ specificke vlastnosti tohoto // pole), nebo null, není-li shoda nalezena var matches = pattern.exec("rsabbbcxyabctu"); // alert(matches.index); // 2 - pozice, kde se nasla shoda // alert(matches[0]); // podretezec, odpovidajici celemu re (abbbc) // alert(matches[1]); // podretezec, odpovidajici 1. podvyrazu // (bbbc) // alert(matches[2]); // podretezec, odpovidajici 2. podvyrazu (c) // pro globalni vzor (priznak g) nachazi pro kazde volani další // shodu (zvysuje index) P. Štěpán PHP BI-PHP, výpis 9 3/6

var shoda = pattern.test("rsabbbcxyabctu"); // true - shoda se nasla // alert(shoda); // primitivni obalove typy - umoznuje pouzivat metody na // primitivnich hodnotach var str1 = "abcdefgh"; var str2 = str1.substr(2,3); // pri cteni vytvori objekt // obaloveho typu, po pouziti se instance odstrani // typ Boolean - prilis se nepouziva // pozor pri vytvareni explicitnich instanci var falseobj = new Boolean(false); // objekt!! var result = falseobj && true; // true // typ Number var numobject = new Number(3); // obvykle automaticky // ma metody tostring, tolocalestring a valueof (vlastni cislo) // metoda tofixed vraci řetězec s daym poctem desetinnych mist var num = 5; // metoda tofixed // alert(num.tofixed(2)); // "5.00" - 2 desetinna mista // metoda toexponential vraci retezec s cislem v exponentovem tvaru // opet mozno uvest pocet des. mist num = 10; // alert(num.toexponential(1)); // "1.0e+1" // metoda toprecision - vraci bud fix nebo exp tvar - podle toho, // co je pro toto cislo vyhodnejsi. Parametr je pocet cislic (bez // exponentu) num = 99; // alert(num.toprecision(1)); // "1e+2" // alert(num.toprecision(2)); // "99" // typ String; // metody tostring, tolocalestring a valueof vraceji vlastni string // vlastnost length - pocet znaku v retezci // alert("abcd".length); // 4 // prace se znaky // alert("abcd".charat(1)); // B // alert("abcd".charcodeat(1)); // 66 // nektere prohlizece berou stringy jako pole znaku str[2] // retezeni - metoda concat, nebo operator + P. Štěpán PHP BI-PHP, výpis 9 4/6

// metody pro ziskani podretezce slice, substr a substring // 1 nebo 2 argumenty. 1. - pozice, odkud se zacina. // 2. - u slice a substring - znak, pred kterym se zastavi // 2. - u substr delka retezce (nemeni puvodni retezec) // 2. chybi - do konce // alert("abcdefghi".slice(2,5)); // od znaku 2 do (ne vcetne) 5 // alert("abcdefghi".substr(2,3)); // 2. parametr delka // zaporne argumenty: slice - pricte k delce (pocita od konce) // substr 1. pricte k delce, za druhy da nulu (prazdny retezec) // chybne IE // substring oba prevede na nulu // metody pro vyhledavani v retezci indexof a lastindexof // alert("ada".indexof("a")); // 0 // alert("ada".lastindexof("a")); // 2 // lze 2. parametr - odkud hledat // metody nastavujici velikost písmen: touppercase, tolowercase var jmeno = "andulka"; // alert(jmeno.substr(0,1).touppercase() + // jmeno.substr(1).tolowercase()); // prace s regularnimi vyrazy pro typ String - metody match, // search, replace a split var pattern = /ab+c/; // jako exec v RegExp var matches = "rsabbbcxyabctu".match(pattern); // index 1. vyskytu nebo -1 var index = "rsabbbcxyabctu".search(pattern); var nahrazene = "rsabbbcxyabctu".replace(/ab+c/,"klm"); // alert(nahrazene); // g - nahradi vsechny vyskyty var nahrazene = "rsabbbcxyabctu".replace(/ab+c/g,"klm"); // alert(nahrazene); // ve druhem argumentu (je-li retezec) lze pouzit specialni znaky, // ktere umoznuji vkladat hodnoty, ziskane pri vyhledavani. // Napr. $n predstavuje n-ty podvyraz // druhym argumentem muze byt funkce pro specielni zpracovani // (dostava parametry z vyhledavane shody) var slova = "Prvni, Druhy, Treti,Ctvrty"; var pole = slova.split(/ *, */); // alert(pole); P. Štěpán PHP BI-PHP, výpis 9 5/6

// metoda localecompare str.localcompare(porovnavany) // > 0 pro str za, porovnavany (abecedne), 0 pro shodnost,... // metoda fromcharcode // alert(string.fromcharcode(65,66,67,68)); // "ABCD" // dalsi objekty // objekt Global - zakladni konstanty a metody jsou jeho metodami: // NaN,..., parseint,... // encodeuri a encodeuricomponent - prekodovani neplatnych znaku // URI adresy // jen mezera na konci: // alert(encodeuri("http://www.my.cz/s mezerou.html")); // vsechny ("nepripustne") znaky v retezci // alert(encodeuricomponent("http://www.my.cz/s mezerou.html")); // metoda eval - interpret JavaScriptu var prikazy = "var i = 2; j = 3; alert(i+j);"; // eval(prikazy); // object Math - matematicke fce a konstanty - sin, tan, pi,... var x = Math.e; x = Math.pi; var max = Math.max(2,17,39,1); // alert(max); // podobne min // alert(math.round(1.8)); // podobne floor a ceil var min = 1, max = 6; var kostka = Math.floor(Math.random()*(max - min + 1)+ min); alert(kostka); </script> </body> </html> P. Štěpán PHP BI-PHP, výpis 9 6/6