Работаем с объектами в JavaScript

В прошлой статье я рассказывал о массивах в JavaScript. Из нее мы можем понять, что для хранения различных типов данных массивы не совсем подходят, так как они не могут быстро работать.

Для таких задач нам подойдут объекты, которые могут хранить в себе различные свойства (ключи и их значения). Ключ – это имя значения, которое мы хотим хранить в объекте. По нему легко искать нужное значение в объекте и выводить его (по аналогии с порядковым номером в массивах).

Создание объектов и основные команды

Объекты могут быть созданы с помощью конструктора объектов или фигурных скобок с необязательными свойствами внутри них. Рассмотрим создание объекта на примере:

 var obj = new Object(); var obj1 = {}; console.log(obj); //Выведет {} console.log(obj1); //Выведет {}

Как мы уже знаем, объекты могут хранить в себе данные различных типов. Давайте создадим объект с произвольными значениями и ключами:

 var obj = {    car: “машина”,    number: 6,    yes: true,    mas: [1, 2, 3] }

У каждого значения должно быть свое имя, а также запятая, если значений несколько. Запятая может стоять и после последнего свойства.

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

 var obj = {    “car color”: “красный”,    “1”: “один” } console.log(obj[“car color”]) //Выведет “красный” console.log(obj[“1”]) //Выведет “один”

Также мы можем сделать вычисляемые ключи в объекте с помощью квадратных скобок. Рассмотрим на двух примерах:

 var keyn = "1" var obj = {    [keyn]: "один" } console.log(obj["1"])  //Выведет “один”   ​var keyn = "1" var obj = {    [keyn+"2"]: "двенадцать" } console.log(obj["12"]) //Выведет “двенадцать”

Теперь давайте выведем в консоль некоторые значения в объекте. Делается это при помощи имени объекта и нужного нам ключа через точку:

 var obj = {    car: “машина”,    number: 6,    yes: true,    mas: [1, 2, 3] }  console.log(obj.car); //Выведет “машина” console.log(obj.mas); //Выведет [ 1, 2, 3 ]

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

 var obj = {    car: “машина”,  } obj.animal = “тигр” console.log(obj.car); //Выведет “машина” console.log(obj.animal); //Выведет “тигр”

Для удаления свойства из нашего объекта используем команду delete:

 var obj = {    car: “машина”,    number: 6,    yes: true,    mas: [1, 2, 3] } delete obj.yes; console.log(obj.yes);  //Выведет undefined 

Создание объектов из функции

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

 function makeObj(num) {   return {     num   } } var obj = makeObj(1); console.log(obj.num); //Выведет 1

Особенности объектов

В массивах нет никаких ограничений к именам свойств, то есть мы можем использовать зарезервированные под нужды языка операторы в качестве имени свойства. Например:

 var obj = {    return: 1 } console.log(obj.return) //Выведет 1

Если мы используем число в качестве имени свойства объекта, то оно просто преобразуется в строку, и все будет работать:

 var obj = {    1: 1 } console.log(obj[“1”]) //Выведет 1

Оператор in

Для проверки наличия свойства в объекте используют оператор in. Пример:

 var obj = {    car: "машина",     1: 1 }; console.log("car" in obj); // Выведет true console.log("2" in obj); // Выведет false

Также этот оператор используют для перебора всех значений объекта в цикле. Рассмотрим на примере:

 var obj = {    car: "машина",    number: 6,    yes: true,    mas: [1, 2, 3] } for (let key in obj) {   console.log(obj[key]); //Выведет все значения объекта через строчку } 

Заключение

Мы изучили объекты в JavaScript и научились пользоваться ими. Надеюсь, эта статья оказалась полезной для вас. Удачи!

Межтекстовые Отзывы
Посмотреть все комментарии
guest

Что такое дополненная реальность

Разработка #Google #Продажи #Технологии #Сервисы Выбирали когда-нибудь кроссовки или диван в интернете? Не очень удобно, верно? Было бы...

CMS, фреймворк или собственная разработка: что выбрать?

CMS CMS – система управления контентом. Распространяется на бесплатной или платной основе. Подойдет для проектов: с небольшой нагрузкой;...

Уровни языков программирования: краткий обзор

Разработка #Обзор #Технологии #Железо #Программы Рассказываю о том, почему языки программирования делятся на уровни, что эти уровни обозначают...

Создаем свой шаблон для Joomla. Пошаговое руководство

Разработка #Шаблоны #HTML/CSS #Joomla! В этой статье пойдет речь о создании своего шаблона для Joomla 3.х с возможностью...

Pagekit – open source CMS от Yootheme

Разработка #Шаблоны #JavaScript #HTML/CSS #PHP #Оптимизация Тенденция, однако. Разработчики клубных шаблонов начинают создавать собственные CMS. Примерно год назад...

Списки в Python и методы работы с ними

Разработка #Python Списки в Python – упорядоченный изменяемый набор объектов произвольных типов, пронумерованных от 0. Они используются для...

Что такое язык программирования

Разработка #C/C#/C++ #Программы #Обзор #Веб-дизайн #Java Программа на компьютере или смартфоне – это последовательность команд, которую создавали с...

Как создать сайт на WordPress с нуля

Разработка #Настройка #WordPress #Базы данных #Оптимизация Поговорим о том, как создать сайт на базе WordPress и Timeweb. Сайт,...

Верстка сайта: инструкция для новичков

«Верстка сайта — это сложно? А если я совсем новичок, у меня получится?» В этой статье мы рассказываем,...

Push-уведомления: типы, назначение, советы по созданию

Разработка #Конверсия #Интернет-магазин #Веб-дизайн #Продажи Сегодня поговорим о push-уведомлениях. Как они работают, зачем нужны и какими должны быть.  Что такое...

Авторское право на код – как работает, когда защищает и как его зарегистрировать

Разработка #Программы #Законы #Разбор Поговорим о том, как работает авторское право на код в России и за рубежом....

Что такое User agent и как его изменить

Разработка #Браузеры #Веб-дизайн #Безопасность Во время взаимодействия с браузером пользователь может встретить такое понятие, как User agent. Используется...

Как создать чат-бота ВКонтакте с расписанием уроков

Разработка #Серверы #ВКонтакте #Боты #JavaScript #Ubuntu Для более быстрого просмотра расписания лекций я использую простого чат-бота ВК, которым, помимо...

Максимальная производительность 1С-Битрикс: Настройка виртуальной машины

Системы управления контентом (CMS) стали неотъемлемой частью современных веб-проектов, предоставляя множество возможностей для разработки и управления сайтами. 1С-Битрикс —...

10 лучших IDE

Разработка #C/C#/C++ #Ubuntu #Java #JavaScript #HTML/CSS #PHP #Python #Windows IDE (Integrated Development Environment) – это интегрированная, единая среда...

Работа в IT: современные тенденции

Разработка #Технологии #Карьера #Менеджмент #Разбор Работа в IT-сфере как была перспективным направлением и путем к успешной карьере, так...

Виды алгоритмов сортировки в Python

Разработка #Обзор #Редакторы кода #Python В одной из прошлых статей я рассматривал списки в Python, а также затронул их сортировку....

Что почитать программисту: 10 популярных книг по разработке

Разработка #Подборка #Программы #Веб-дизайн #Наука Какую литературу стоит прочитать программисту, чтобы стать более квалифицированным специалистом и превратиться из...

Что такое рефакторинг кода

Разработка #Обзор #Технологии #IDE #Редакторы кода #JavaScript Зачем разработчики на регулярной основе переписывают свой и чужой код, не...

Как правильно использовать enum в C#

Разработка #C/C#/C++ #Разбор В C# есть много интересных возможностей, помогающих разработчикам писать код на языке, который похож на...