Посмотреть все уроки курса
Выбрать другой урок из курса
Поиск по сайту
Теория урока

42. Объекты в JavaScript

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

Пример 1
var obj = {
site: {
first: 'corpyn.ru',
second: 'codebra.ru'
},
'author theory': 'Иван Иванов',
'today-sdate': '11 Апреля 2015',
};

document.write(obj.site.first + "<br>"); // -> corpyn.ru
document.write(obj.site.second + "<br>"); // -> codebra.ru
document.write(obj.site['first'] + "<br>"); // -> corpyn.ru
document.write(obj['site']['first'] + "<br>"); // -> corpyn.ru
document.write(obj.author theory + "<br>"); // -> error
document.write(obj['author theory'] + "<br>"); // -> Иван Иванов

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

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

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

Пример 2
var obj = { ... }

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

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

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

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

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

Пример 5
var obj = {
max: 'Любое значение',
min: 'Любое значение'
}

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

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

Пример 6
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 много таких конструкторов и позже вы научитесь создавать свои конструкторы, но пока примеры вам известных:

Пример 7
var obj = new Object(); // == {}
var arr = new Array(); // == []

Похожие уроки и записи блога

Первое знакомство с PythonЗнакомство с Python
Типы данных в PythonЗнакомство с Python
Работа с файлами в Python Знакомство с Python
Модули в PythonЗнакомство с Python
Погружение в PythonЗнакомство с Python
Обработка исключений (try/except) в PythonЗнакомство с Python
Функциональное программирование: map, filter и reduceЗнакомство с Python
Основы объектно-ориентированного программирования (ООП) в PythonЗнакомство с Python
Методы и особенности множеств в PythonЗнакомство с Python
<
×
>
Впервые на сайте Codebra?

Извините за это всплывающее окно, меня они тоже раздражают.

Образовательный ресурс codebra.ru полностью посвящен программированию. Все курсы и уроки находятся на главной странице. Ради интереса можете посмотреть на содержимое курсов по Python, HTML и CSS, JavaScript, C++ и другие, размещенные на главной странице.

Если что-то не нашли, то воспользуйтесь поиском по сайту, который находится на главной странице в самом верху.

Удачи в обучении!

Закрыть окно