Codebra
28 января 2026 в 12:27

Урок 41. Объекты в JavaScript

Объект – это фундамент JavaScript. Объект – это значение, в котором есть другие значения, если попросту сказать.
📝

Внимание! На этой странице вы найдете материал урока из архивного курса по JavaScript. Курс был написан в 2015 и по-прежнему актуален для начинающих веб-разработчиков.

Теоретический материал сохранен в исходном виде, а практические задания с автоматической проверкой вынесены в отдельные роадмапы.

Полный список уроков доступен по тегу Архивный курс по JavaScript и на странице первого урока.

Объект – это фундамент JavaScript. Объект – это значение, в котором есть другие значения, если попросту сказать. Объект состоит из неограниченного, неупорядоченного количества свойств, которые имеют свое имя и значение. Самый простой способ создать объект, это объединить свойства в фигурные скобки. Далее примеры:

var obj = {
    site: {
        first: 'codesecure.ru',
        second: 'codebra.ru'
    },
    'author theory': 'Иван Иванов',
    'today-sdate': '11 Апреля 2015',
};
 
document.write(obj.site.first + "<br>");        // -> codesecure.ru
document.write(obj.site.second + "<br>");       // -> codebra.ru
document.write(obj.site['first'] + "<br>");     // -> codesecure.ru
document.write(obj['site']['first'] + "<br>");  // -> codesecure.ru
document.write(obj.author theory + "<br>");     // -> error
document.write(obj['author theory'] + "<br>");  // -> Иван Иванов

Объекты делятся на категории:

  • Объект базового языка – это объект, который определен спецификацией ECMAScript. Например, дата, массив, регулярное выражение
  • Объект среды выполнения – это объект, который определен средой выполнения (например, браузер)
  • Пользовательский объект – это объект, который создан во время выполнения скрипта

Возможно, объекты могут вам напомнить массивы. Теперь разберем то, что написали выше. Вначале создаем сам объект:

var obj = { ... }

После начинаем описывать свойства – имя_свойства: значение. Правила для имен свойств такие же, как и для переменных. НО! Можно указывать любое имя, при условии, что оно будет помещено в одинарные или двойные кавычки. Да даже такое: 217i&*2d

var obj = {
    max: 'Любое значение'
}

Если свойств несколько, то после каждого должна быть запятая (последнюю запятую ставить не обязательно). Далее пример с ошибкой:

var obj = {
    max: 'Любое значение'
    min: 'Любое значение'
}

Чтобы исправить ошибку, нужно добавить запятую после первого свойства:

var obj = {
    max: 'Любое значение',
    min: 'Любое значение'
}
 
// Так тоже можно
var obj = {
    max: 'Любое значение',
    min: 'Любое значение',
}

Вложений можно делать сколько угодно. Напишем простого робота:

var robot = {
    say: {
        ask: {
            yes: 'Yes!',
            no: 'No!',
        },
        go: {
            toLeft: 'Влево',
            toRight: 'Вправо'
        },
    },
};
 
document.write(robot.say.ask.yes);      // -> Yes!
document.write(robot.say.ask.no);       // -> No!
document.write(robot.say.ask);          // -> [object Object]
document.write(robot.say.go.yes);       // -> undefined (в свойстве go, нет свойства yes)
document.write(robot.say.go.toRight);   // -> Вправо

Вот мы научились создавать объекты при помощи фигурных скобок, но это не единственный способ. Можно написать оператор new, за которым следует имя функции. Эта функция будет конструктором и нужна для объявления объекта. В JavaScript много таких конструкторов и позже вы научитесь создавать свои конструкторы, но пока примеры вам известных:

var obj = new Object(); // == {}
var arr = new Array();  // == []

В следующем уроке научимся получать свойства объекта JavaScript.

📝

Переходите к следующему уроку курса, а так же не забудьте посмотреть новый материал на Codebra по тегу JavaScript.