W JavaScript obiekty są kluczowymi elementami języka. Pozwalają na przechowywanie zgrupowanych danych w strukturze która będzie przechowana w jednej zmiennej. Można je postrzegać jako kolekcje właściwości, gdzie każda właściwość jest zdefiniowana jako para klucz-wartość. Obiekty są bardzo użyteczne do modelowania rzeczywistych obiektów w kodzie, takich jak np samochody, użytkownicy, zamówienia itp.
Tworzenie obiektu
Aby utworzyć obiekt, używamy nawiasów klamrowych {}
. Wewnątrz tych nawiasów możemy zdefiniować właściwości obiektu jako pary klucz-wartość, oddzielając klucze od wartości dwukropkiem, a poszczególne pary przecinkami. Nazywamy to notacją literałową:
// Obiekt opisujący samochód
let car = {
brand: "Ford",
model: "Mustang",
year: 1969
};
console.log(car.model); // Wyświetli: Mustang
Dostęp do właściwości obiektu
Do właściwości obiektu można uzyskać dostęp na dwa sposoby: za pomocą notacji kropkowej lub notacji nawiasowej. Możemy nie tylko odczytać wartość właściwości w obiekcie, ale też ją zmodyfikować czy dodać nawet nową.
// Obiekt opisujący samochód
let computer = {
cpu: "Amd",
model: "Zen",
year: 2023
};
console.log(computer.cpu); // Pokaże: Amd
computer.year = 2022; // zmiana wartości
console.log(computer.year); // Pokaże: 2022
// Można też odczytać wartość przekazując
// nazwę właściwości jako łańcuch znaków
// do nawiasów kwadratowych
computer["year"] = 2020;
console.log(computer["year"]); // Pokaże: 2020
computer.price = 10000;
console.log(computer.year); // Pokaże: 10000
Podsumowanie
Obiekt to struktura czyli może posiadać wewnątrz wiele właściwości które są takimi jakby wewnętrznymi zmiennymi opisującymi obiekt. Warto stosować obiekty bo ułatwiają grupowanie i operacje na danych, ponieważ w praktyce opisując rzeczywistość na potrzeby programu wiele danych będzie ze sobą powiązane jak np. producent danego auta, jego kolor itd. Do obiektów możemy dodać funkcje zwane metodami, ale o tym powiemy w kolejnych lekcjach.
Jeżeli chcesz przyśpieszyć swoją naukę chciałbym polecić mój kurs video JavaScript w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.