1. Prawie wszystko jest obiektem (poza nullem i `undefined`). 2

Transkrypt

1. Prawie wszystko jest obiektem (poza nullem i `undefined`). 2
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:
txt="a,b,c,d,e" // String
txt.split(","); // Split
9. Daty:
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:
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to do a case-insensitive search for "w3schools" in a
string.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction()
{
var str = "Visit W3Schools";
var patt1 = /w3schools/i;
var result = str.match(patt1);
document.getElementById("demo").innerHTML=result;
}
</script>
</body>
</html>
Przykład 2:
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to do a global search for "is" in a string.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction()
{
var str = "Is this all there is?";
var patt1 = /is/g;
var result = str.match(patt1);
document.getElementById("demo").innerHTML=result;
}
</script>
</body>
</html>
Przykład 3:
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to do a global, case-insensitive search for "is" in a
string.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction()
{
var str = "Is this all there is?";
var patt1 = /is/gi;
var result = str.match(patt1);
document.getElementById("demo").innerHTML=result;
}
</script>
</body>
</html>
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.

Podobne dokumenty