Typy prymitywne (7):
- undefined
let x; console.log(x); // undefined
Wartość przypisywana zmiennej, która została zadeklarowana, ale nie została zainicjalizowana.
- null
- boolean
- Może przyjmować jedną z dwóch wartości: true lub false.
- number
liczby całkowite i zmiennoprzecinkowe - wszystko jest tak na prawdę 'float'
obejmuje również specjalne wartości jak NaN (Not-a-Number) i Infinity
- bigint
Tworzy się je, dodając n na końcu liczby.
- string
cudzysłowy pojedyncze ('), podwójne (") lub szablony tekstowe, czyli tzw 'template literals' z (`)
let greeting = "Hello, World!"; let greeting = 'Hello, World!';
const name = "Anna"; const age = 25; const greeting = `Cześć, mam na imię ${name} i mam ${age} lat.`;
- symbol
let uniqueId = Symbol('id');
Object:
Podstawowy typ referencyjny, od którego wywodzą się inne struktury danych.
Obiekt ma ograniczone metody, ale można używać funkcji takich jak Object.keys() lub Object.entries().
Tylko stringi i symbole mogą być kluczami.
let person = { name: "John", age: 30 };
console.log(person.name); // "John"
Inne Typy referencyjne (obiekty):
- Array
mogą zawierać różne typy danych
let numbers = [1, 2, 3];
let random_arr = [1, "string", {"x": "x_value"}, [1, 2, 3, 4], generateRandomNumberFunc];
- Function
- Date
- Map
Map to wbudowana struktura danych w JavaScript, która przechowuje pary klucz-wartość, podobnie jak 'Object'.
Kluczami w Map mogą być dowolne typy danych (np. obiekty, funkcje, liczby, itp.).
Map zachowuje porządek dodawania kluczy i posiada wbudowane metody do pracy z kluczami i wartościami (set, get, has itp.).
const map = new Map();
map.set("name", "Alice");
console.log(map.get("name")); // Alice
- Set
const set1 = new Set(); set1.add(1);
- RegExp, WeakMap, WeakSet
- Error
- Promise
Typed Arrays (Tablice o określonym typie). Przykłady:
Int8Array
Uint8Array
Float32Array
Int32Array
Uint16Array