1. Prawie wszystko jest obiektem (poza nullem i 'undefined'). 2. Dostawanie się do właściwości przez kropkę: obiekt.nazwawlasciwosci; Przykład: var msg = "hello world!"; var x = msg.length; 3. Dostęp do metod uzyskuje się analogicznie do właściwości: obiekt.nazwametody(); var msg = "hello world!"; var x = msg.touppercase(); 4. Tworzenie obiektu: Dwa sposoby na stworzenie obiektu: 1. Zdefiniowanie i stworzenie instancji obiektu. 2. Zdefiniowanie obiektu funkcja i stworzenie nowej instancji Bezpośrednia instancja do obiektu: person = new Object(); person.firstname = "John"; person.lastname = "Doe"; person.age = 50; person.eyecolor = "blue"; alternatywnie: person=firstname:"john",lastname:"doe",age:50,eyecolor:"blue"; 5. Tworzenie obiektu za pomocą konstruktora: function person(firstname,lastname,age,eyecolor) this.firstname=firstname; this.lastname=lastname; this.age=age; this.eyecolor=eyecolor; var myfather=new person("john","doe",50,"blue"); var mymother=new person("sally","rally",48,"green"); 6. Dodawanie metod: function person(firstname,lastname,age,eyecolor) this.firstname=firstname; this.lastname=lastname; this.age=age; this.eyecolor=eyecolor;
this.changename=changename; function changename(name) this.lastname=name; mymother.changename("doe"); 7. Pętla for... in pozwala przebiec po wszystkich właściwościach obiektu: for (zmienna w obiekcie) var person=fname:"john",lname:"doe",age:25; for (x in person) txt=txt + person[x]; 8. Stringi: Właściwość.length zwraca długość stringa.indexof() zwraca położenie (numer) pierwszego pojawienia się szukanego stringa, np: var str="hello world, welcome to the universe."; var n=str.indexof("welcome");.match() - szuka podanego stringa, jeżeli istnieje zwraca pasujący element: Kod: var str="hello world!"; document.write(str.match("world") + "<br>"); document.write(str.match("world") + "<br>"); document.write(str.match("world!")); Wyświetli: world null world!.replace() - zamienia jeden string, drugim: str="please visit Microsoft!" var n=str.replace("microsoft","w3schools");.touppercase()/.tolowercase() - konwertuje tekst odpowiednio do dużych/małych znaków. Metody te nie zmieniaja początkowego stringu a generują nowy..split() - generuje tablicę ze stringa wykorzystując znak podany w wejściu jako element odzielający:
9. Daty: txt="a,b,c,d,e" // String txt.split(","); // Split new Date() // current date and time new Date(milliseconds) //milliseconds since 1970/01/01 new Date(dateString) new Date(year, month, day, hours, minutes, seconds, milliseconds) Przykłady: var today = new Date() var d1 = new Date("October 13, 1975 11:13:00") var d2 = new Date(79,5,24) var d3 = new Date(79,5,24,11,33,0) Daty są obliczane w milisekundach od 1 stycznia 1970roku, każdy dzień trwa 86 400 000 milisekund. 10. Uzupełnienie do tablic: Tablice (arrays) przechowują wewnątrz siebie obiekty. Ponieważ wszystkie zmienne JSowe są obiektami, więc w arrayu możemy przechowywać różne typy: myarray[0]=date.now; myarray[1]=myfunction; myarray[2]=mycars; Metody dla tablic: Możemy tworzyć nowe metody dla tablic wykorzystując globalny konstruktor prototype: Array.prototype.ucase=function() for (i=0;i<this.length;i++) this[i]=this[i].touppercase(); 11. Matematyka: Obiekty Math pozwalają przeprowadzić różne matematyczne operację oraz zawierają różne matematyczne stałe: Math.E Math.PI Math.SQRT2 Math.SQRT1_2 Math.LN2 Math.LN10 Math.LOG2E Math.LOG10E Metody matematyczne:.round() - zaokrągla do najbliższej liczby całkowitej.random() - generuje losową liczbę z przedziału 0-1.
http://www.w3schools.com/jsref/jsref_obj_math.asp 12. Wyrażenia regularne Dwa sposoby: var patt = new RegExp(wyrażenie, modyfikatory); albo var patt = /pattern/modifiers; Przykłady modyfikatorów: g - globalne, szukaj wszystkich pasujących, nie zatrzymuj się na pierwszym i - rozróżniaj małe/duże litery Przykład: <p id="demo">click the button to do a case-insensitive search for "w3schools" in a string.</p> var str = "Visit W3Schools"; var patt1 = /w3schools/i; Przykład 2: <p id="demo">click the button to do a global search for "is" in a string.</p> var str = "Is this all there is?"; var patt1 = /is/g;
Przykład 3: <p id="demo">click the button to do a global, case-insensitive search for "is" in a string.</p> var str = "Is this all there is?"; var patt1 = /is/gi; Metody wyrażeń:.test() - szuka stringa w tekście, jeśli go znajdzie zwraca prawdę, w innym przypadku fałsz.exec() - przeszukuje string w poszukiwaniu odpowiedniej wartości, jeśli znajdzie zwraca go, w innym przypadku zwraca null.