JavaScript został stworzony przez programistę Brendan Eich z Netscape i wprowadzony w grudniu 1995 pod nazwą LiveScript. Dość szybko zmieniono jego nazwę na JavaScript, chociaż oficjalna nazwa JavaScript to ECMAScript. ECMAScript jest rozwijany i utrzymywany przez Międzynarodową Organizację ECMA (Europejskie Stowarzyszenie Producentów Komputerów).

Co to jest JavaScript?
1) JavaScript to język skryptowy lub skrypty. Skrypt jest kod programowania- zestaw instrukcji, który nie wymaga wstępnego przetwarzania (na przykład kompilacji) przed uruchomieniem. Kod JavaScript jest interpretowany przez silnik przeglądarki podczas ładowania strony internetowej. Interpreter przeglądarki analizuje, przetwarza i wykonuje oryginalny program lub zapytanie wiersz po wierszu.

2) JavaScript jest językiem zorientowanym obiektowo z dziedziczeniem prototypowym. Obsługuje kilka wbudowanych obiektów, a także umożliwia tworzenie lub usuwanie własnych (niestandardowych) obiektów. Obiekty mogą dziedziczyć właściwości bezpośrednio od siebie, tworząc prototypowy łańcuch obiektów.

JavaScript na stronach internetowych

1. Podłączanie skryptów do dokumentu html

Skrypty JavaScript są wbudowany, tj. ich treść jest częścią dokumentu i zewnętrzny, przechowywane w osobnym pliku .js. Skrypty można osadzać w dokumencie html w następujący sposób:

lub treść strony.

Ta metoda jest zwykle używana w przypadku dużych skryptów lub skryptów, które są ponownie używane na różnych stronach internetowych.

Jako program obsługi zdarzeń.
Każdy element HTML ma zdarzenia JavaScript, które są uruchamiane pewien moment. Musisz dodać niezbędne zdarzenie do elementu html jako atrybut i określić wymaganą funkcję jako wartość tego atrybutu. Funkcja, która ma zostać wywołana w odpowiedzi na wyzwolenie zdarzenia, to obsługa zdarzeń. W wyniku wyzwolenia zdarzenia zostanie wykonany kod z nim związany. Ta metoda jest używana głównie w przypadku krótkich skryptów, na przykład możesz ustawić kolor tła, który będzie się zmieniał po kliknięciu przycisku:

Wewnątrz elementu

2. Typy danych i zmienne w JavaScript

Komputery przetwarzają informacje - dane. Dane mogą być prezentowane w różnych formach lub typach. Wiele funkcji JavaScript jest zaimplementowanych za pomocą prostego zestawu obiektów i typów danych. Funkcjonalność związana z ciągami, liczbami i logiką jest oparta na typach danych ciąg, liczba i wartości logiczne. Inny funkcjonalność, włącznie z wyrażenia regularne, daty i operacje matematyczne, odbywa się za pomocą obiektów RegExp, Date i Math.

Literały w JavaScript są to specjalna klasa typu danych, stałe wartości jednego z trzech typów danych - string, numeric lub boolean:

"to jest ciąg" 3.14 true alert("Hellow"); // "Hellow" to literał var myVariable = 15; // 15 to literał

prymitywny typ danych jest instancją określonego typu danych, takiego jak string, numeric, boolean, null i undefined .

2.1. Zmienne w JavaScript

Dane przetwarzane przez skrypt JavaScript są zmienne. Zmienne to nazwane kontenery, które przechowują dane (wartości) w pamięci komputera, które mogą ulec zmianie podczas wykonywania programu. Zmienne mają Nazwa, typ oraz oznaczający.

nazwa zmiennej, lub identyfikator, może zawierać tylko litery a-z, A-Z , cyfry 0-9 (cyfra nie może być pierwszym znakiem w nazwie zmiennej), symbol $ (może być tylko pierwszym znakiem w nazwie zmiennej lub funkcji) oraz podkreślenie _ , spacje nie są dozwolone. Długość nazwy zmiennej nie jest ograniczona. Możliwe jest, ale nie zalecane, pisanie nazw zmiennych literami alfabetu rosyjskiego, w tym celu muszą być napisane w Unicode.

Nie możesz używać słów kluczowych JavaScript jako nazwy zmiennej. Nazwy zmiennych w JavaScript uwzględniają wielkość liter, co oznacza, że ​​var message; i varMessage; są różnymi zmiennymi.

Zmienna jest tworzona (deklarowana) za pomocą słowo kluczowe var, po której następuje nazwa zmiennej, na przykład var message; . Musisz zadeklarować zmienną przed jej użyciem.

Zmienny zainicjowany wartość za pomocą operatora przypisania = , na przykład var message="Hellow"; , tj. zmienna message jest w niej tworzona i przechowywana Inicjał Wartość „Cześć”. Zmienna może być zadeklarowana bez wartości, wówczas przypisywana jest jej domyślna wartość undefined . Wartość zmiennej może ulec zmianie podczas wykonywania skryptu. W tym samym wierszu można zadeklarować różne zmienne, oddzielając je przecinkiem:

Var message="Hellow", number_msg = 6, time_msg = 50;

2.2. Zmienne typy danych

JavaScript jest językiem bez typu; typ danych dla konkretnej zmiennej nie musi być określony podczas jej deklarowania. Typ danych zmiennej zależy od przyjmowanych przez nią wartości. Typ zmiennej może się zmieniać podczas operacji na danych ( dynamiczne odlewanie typu). Konwersja typu jest wykonywana automatycznie w zależności od kontekstu, w jakim są używane. Na przykład w wyrażeniach zawierających wartości liczbowe i łańcuchowe z operatorem + JavaScript konwertuje wartości liczbowe na łańcuchy:

Komunikat Var = 10 + „dni przed wakacjami”; // zwraca "10 dni do wakacji"

Możesz uzyskać typ danych zmiennej za pomocą operatora typeof. Ten operator zwraca ciąg, który identyfikuje odpowiedni typ.

typ 35; // zwraca "liczbę" typ "tekst"; // zwraca "string" typeof true; // zwraca "boolean" typeof ; // zwraca "obiekt" typ niezdefiniowany; // zwraca "undefined" typeof null; // zwróci "obiekt"

Wszystkie typy danych w JavaScript są podzielone na dwie grupy − prosty typy danych (prymitywne typy danych) oraz złożony typy danych (złożone typy danych).

Do prosty typy danych to string, numeric, boolean, null i underfined .

2.2.1. Typ ciągu (ciąg)

Służy do przechowywania ciągu znaków ujętego w podwójne lub pojedyncze cudzysłowy. Pusty zestaw znaków ujęty w pojedyncze lub podwójne cudzysłowy to pusty ciąg. Liczba ujęta w cudzysłów również jest ciągiem.

var pieniądze = ""; // pusty ciąg, zero znaków var work = "test"; var dzień = "Niedziela"; zmienna x = "150";

Możesz umieścić pojedynczy cudzysłów w ciągu cudzysłowu i na odwrót. Cytat tego samego typu jest poprzedzany znakiem odwrotnego ukośnika \ (tzw. sekwencja ewakuacyjna):

Document.writeln("\" Dzień dobry, Iwan Iwanicz! \"\n"); // wyświetla "Dzień dobry, Iwan Iwanowicz!"

Łańcuchy można porównywać, a także łączyć za pomocą operatora konkatenacji +. Dzięki automatycznemu rzutowaniu typów można łączyć liczby i ciągi znaków. Ciągi są trwałe, po utworzeniu ciągu nie można go zmienić, ale można go utworzyć Nowa liniałącząc inne wiersze.

2.2.2. Typ numeryczny (liczba)

Używany do wartości liczbowych. Liczby w JavaScript są dwojakiego rodzaju: liczby całkowite (liczba całkowita) i liczby zmiennoprzecinkowe (liczba zmiennoprzecinkowa). Wartości całkowite mogą być dodatnie, takie jak 1 , 2 i ujemne, takie jak -1 , -2 lub zero. 1 i 1.0 to ta sama wartość. Większość liczb w JavaScript zapisuje się jako system dziesiętny można również stosować cyfry, systemy ósemkowe i szesnastkowe.

W dziesiętny systemu wartości zmiennych liczbowych podaje się za pomocą cyfr arabskich 1, 2, 3, 4, 5, 6, 7, 8, 9, 0.

W ósemkowy Format liczb to sekwencja zawierająca cyfry od 0 do 7 i rozpoczynająca się od prefiksu 0 .

Do szesnastkowy format jest poprzedzony 0x (0X), po którym następuje ciąg cyfr od 0 do 9 lub liter od a (A) do f (F), odpowiadających wartościom od 10 do 15 .

Wara = 120; // liczba całkowita dziesiętna wartość liczbowa var b = 012; // format ósemkowy var c = 0xfff; // format szesnastkowy var d = 0xACFE12; // format szesnastkowy

Liczby zmiennoprzecinkowe to liczby z ułamkową częścią dziesiętną lub liczby wyrażone w formie wykładniczej. Notacja wykładnicza przyjmuje następującą postać: liczba z ułamkową częścią dziesiętną, po której następuje litera e , która może być określona zarówno dużymi, jak i małymi literami, po której następuje opcjonalny znak + lub - oraz wykładnik całkowity.

Wara = 6,24; // prawdziwy numer varb = 1,234E+2; // liczba rzeczywista, równoważna 1.234 X 10² var c = 6.1e-2; // liczba rzeczywista, równoważna 6,1 X 10‾²

2.2.3. Typ Boole'a (boole'a)

Ten typ ma dwie wartości: prawda (prawda), fałsz (fałsz). Służy do porównywania i testowania warunków.

Var answer = confirm("Podobał Ci się ten artykuł?\n Kliknij OK. Jeśli nie, kliknij Anuluj."); if (odpowiedź == prawda) ( ​​alert("Dziękuję!"); )

Istnieją również specjalne typy prostych wartości:
typ zerowy— Ten typ ma jedną wartość null, która jest używana do reprezentowania nieistniejących obiektów.

niezdefiniowany typ- typ zmiennej underfined oznacza brak wartości początkowej zmiennej, a także nieistniejącą właściwość obiektu.

Złożone typy danych składają się z więcej niż jednej wartości. Należą do nich obiekty i specjalne typy obiektów - tablice i funkcje. Obiekty zawierają właściwości i metody, tablice są indeksowaną kolekcją elementów, a funkcje składają się z kolekcji instrukcji.

2.3. Zmienne globalne i lokalne

Zmienne są podzielone według zakresu na światowy oraz lokalny. Obszar widoczności jest częścią skryptu, w której nazwa zmiennej jest powiązana z tą zmienną i zwraca jej wartość. Zmienne zadeklarowane wewnątrz ciała funkcji są nazywane lokalny, można ich używać tylko w tej funkcji. Zmienne lokalne są tworzone i niszczone wraz z odpowiednią funkcją.

Zmienne zadeklarowane w elemencie