Typy danych JavaScript
- Poprzednia strona Przypisanie JS
- Następna strona Funkcje JS
wartości ciągów znaków, liczb, wartości logicznych, tablic, obiektów.
Typy danych JavaScript
Zmienne JavaScript mogą przechowywać wieleTypy danych:liczby, wartości ciągów znaków, tablice, obiekty itp.:
var length = 7; // Liczba var lastName = "Gates"; // Ciąg znaków var cars = ["Porsche", "Volvo", "BMW"]; // Tablica var x = {firstName:"Bill", lastName:"Gates"}; // Obiekt
Koncepcja typów danych
W procesie programowania, typy danych są kluczowym pojęciem.
Aby móc operować zmiennymi, ważne jest zrozumienie typów danych.
Bez typów danych komputer nie może bezpiecznie rozwiązać tego problemu:
var x = 911 + \
Czy dodanie 911 do "Volvo" ma sens? Czy to spowoduje błąd czy wygeneruje wynik?
JavaScript będzie tak traktował powyższy przykład:
var x = "911" + "Porsche";
Gdy liczba i string są sumowane, JavaScript traktuje liczbę jako string.
Przykład
var x = 911 + \
Przykład
var x = \
JavaScript oblicza wyrażenia od lewej do prawej. Różne porządku może prowadzić do różnych wyników:
JavaScript:
var x = 911 + 7 + \
Wynik:
918Porsche
JavaScript:
var x = \
Wynik:
Porsche9117
W pierwszym przykładzie, JavaScript traktuje 911 i 7 jako liczby, aż do napotkania \
W drugim przykładzie, ponieważ pierwszym operatorem jest string, wszyscy operatory są traktowani jako stringi.
JavaScript ma dynamiczny typ
JavaScript ma dynamiczny typ. Oznacza to, że ten sam zmiennik może być używany do różnych typów:
Przykład
var x; // Teraz x jest undefined var x = 7; // Teraz x jest liczbą var x = \
Wartości string w JavaScript
String (lub tekst string) to ciąg znaków (np. \
Stringi są otoczone cudzysłówkami. Możesz używać pojedynczych lub podwójnych cudzysłów:
Przykład
var carName = \ var carName = 'Porsche 911'; // Używaj pojedynczych cudzysłów
Możesz używać cudzysłów w stringach, pod warunkiem, że nie pasują one do cudzysłów otaczających string:
Przykład
var answer = \ var answer = \ var answer = 'He is called \
Dowiesz się więcej o stringach w tej lekcji.
Liczby w JavaScript
JavaScript ma tylko jeden typ liczbowy.
Można używać lub nie używać kropki przy zapisie liczby:
Przykład
var x1 = 34.00; // Z kropką var x2 = 34; // Bez kropki
Wielkie lub małe liczby można zapisać w formacie liczb naukowych:
Przykład
var y = 123e5; // 12300000 var y = 123e5; // 12300000
var z = 123e-5; // 0.00123
W tym kursie nauczysz się więcej o liczbach.
Wartości logiczne w JavaScriptWartości logiczne mają tylko dwie wartości:
true lub
.
Przykład
false var x = true;
var y = false;
Wartości logiczne często używane są w testach warunkowych.
Tablice JavaScript
W tym kursie nauczysz się więcej o testach warunkowych.
Tablice JavaScript zapisywane są za pomocą nawiasów kwadratowych.
Elementy tablicy są rozdzielone przecinkami.
Przykład
Poniższy kod deklaruje (tworzy) tablicę o nazwie cars, zawierającą trzy elementy (marki samochodów):
var cars = ["Porsche", "Volvo", "BMW"];
Indeksy tablic opierają się na zero, co oznacza, że pierwszy element to [0], drugi element to [1], itd.
Obiekty JavaScript
W tym kursie nauczysz się więcej o tablicach.
Obiekty JavaScript zapisywane są za pomocą nawiasów kwadratowych. Atrybuty obiektu sąname: value
Przykład
Tak, rozdzielone przecinkami.
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
W przykładzie obiektu (person) znajdują się cztery atrybuty: firstName, lastName, age oraz eyeColor.
Operator typeof
W tym kursie nauczysz się więcej o obiektach w JavaScript: typeof
Aby określić typ zmiennej JavaScript:
Operator typeof zwraca typ zmiennej lub wyrażenia:
Przykład
typeof "" // zwraca "string" typeof "Bill" // zwraca "string" typeof "Bill Gates" // zwraca "string"
Przykład
typeof 0 // zwraca "number" typeof 314 // zwraca "number" typeof 3.14 // zwraca "number" typeof (7) // zwraca "number" typeof (7 + 8) // zwraca "number"
Operator typeof zwraca "object" dla tablic, ponieważ w JavaScript tablice są obiektami.
Undefined
W JavaScript, zmienna bez wartości ma wartość undefined
。typeof również zwraca undefined
.
Przykład
var person; // wartość to undefined, typ to undefined.
Każda zmienna może ustawić wartość na undefined
Wykonaj czyszczenie. Typ również będzie undefined
.
Przykład
person = undefined; // wartość to undefined, typ to undefined.
Pusta wartość
Pusta wartość z undefined
To nie to samo.
Pusta zmienna ciągła ma zarówno wartość, jak i typ.
Przykład
var car = ""; // wartość to "", typ to "string"
Null
W JavaScriptnull
jest "niczym". Jest traktowany jako coś, co nie istnieje.
Niestety, w JavaScriptnull
Typ danych to obiekt.
Możesz to zrobić null
W JavaScript jest rozumiany jako błąd. Powinien być null
.
Możesz ustawić wartość na null
Wyczyść obiekt:
Przykład
var person = null; // wartość to null, ale typ nadal jest obiektem
Możesz również ustawić wartość na undefined
Wyczyść obiekt:
Przykład
var person = undefined; // wartość to undefined, typ to undefined.
Różnica między Undefined a Null
Undefined
z null
Ich wartości są równe, ale typy są różne:
typeof undefined // undefined typeof null // object null === undefined // false null == undefined // true
Wartości pierwotne
Wartość wartości pierwotnych jest pojedynczą prostą wartością danych bez dodatkowych właściwości i metod.
typeof
Operator może zwrócić jeden z następujących typów podstawowych:
- string
- number
- boolean
- undefined
Przykład
typeof "Bill" // zwraca "string" typeof 3.14 // zwraca "number" typeof true // zwraca "boolean" typeof false // zwraca "boolean" typeof x // zwraca "undefined" (jeśli x nie ma wartości)
Złożone dane
typeof
Operator może zwrócić jeden z dwóch typów:
- function
- obiekt
typeof
Operator zwraca obiekty, tablice lub null
Zwraca obiekt
.
typeof
Operator nie zwraca funkcji obiekt
.
Przykład
typeof {name:'Bill', age:62} // zwraca "object" typeof [1,2,3,4] // zwraca "object" (nie "array", zobacz poniższe uwagi) typeof null // zwraca "object" typeof function myFunc(){} // zwraca "function"
typeof
Operator zwraca tablicę jako "obiekt
Ponieważ w JavaScript tablice są obiektami.
Czytania dodatkowe
Zaawansowane kursy JavaScript:
- Poprzednia strona Przypisanie JS
- Następna strona Funkcje JS