Подписывайся на наш Telegram-канал!
Новости, полезный материал,
программирование и ИБ
42. Объекты в JavaScript
Объект – это фундамент JavaScript. Объект – это значение, в котором есть другие значения, если попросту сказать. Объект состоит из неограниченного, неупорядоченного количества свойств, которые имеют свое имя и значение. Самый простой способ создать объект, это объединить свойства в фигурные скобки. Далее примеры:
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. Например, дата, массив, регулярное выражение
- Объект среды выполнения – это объект, который определен средой выполнения (например, браузер)
- Пользовательский объект – это объект, который создан во время выполнения скрипта
Возможно, объекты могут вам напомнить массивы. Теперь разберем то, что написали выше. Вначале создаем сам объект:
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(); // == []
Похожие уроки Codebra
Подписывайся на наш Telegram-канал!
Новости, полезный материал,
программирование и ИБ
- Практики нет, просто нажмите "Проверить задание"
– Не пропускайте новостей, подпишитесь на нашу страницу ВКонтакте, Telegram.
– На данный момент на сайте нет возможности оставлять комментарии, но Вы можете спросить в нашей Telegram-группе.
Это займет не больше минуты.