Объекты в JavaScript. Что такое массив объектов? Создание массива объектов | OTUS

Объекты в JavaScript. Что такое массив объектов? Создание массива объектов

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

Как вам хорошо известно, в JavaScript существуют разные типы данных. 7 из них являются примитивными, ведь они содержат лишь одно значение, причём неважно, строка это, число, либо что-нибудь иное. Пришло время поговорить и про объекты. Они применяются в JavaScript, например, в целях хранения коллекций разных значений, а также каких-нибудь сложных сущностей. В целом они используются довольно часто, и это особенность языка. Разумеется, мы должны их понимать.

Синтаксис создания объекта

Объект можно создать, используя фигурные скобки {…} с необязательным перечнем свойств. В нашем случае свойство является парой «ключ: значение», причём ключ здесь – это строка (называется ещё «именем свойства»), а вот уже значение бывает чем угодно.

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

Создадим пустой ящик объект в JavaScript, что можно сделать, используя один из 2-х вариантов синтаксиса:

let user = new Object(); // синтаксис "конструктор объекта"
let user = {};  // синтаксис "литерал объекта", литеральный синтаксис

Как правило, используется вариант с фигурными скобками {...}. В этом случае объявление называют литералом объекта либо литеральной нотацией.

Особенности литералов и их свойства

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

let user = {     // объект
  name: "Bob",  // под ключом "name" сохраняется значение "Bob"
  age: 50        // под ключом "age" сохраняется значение 50
};

Свойства объекта в JavaScript иногда называют поля объекта.

Идём далее. Каждое свойство имеет ключ («имя» либо «идентификатор»). После имени/идентификатора свойства идёт двоеточие ":", потом указывается значение свойства. Когда в объекте есть несколько свойств, они перечисляются через запятую.

В объекте user у нас находятся 2 свойства: 1. Свойство с именем "name" и, соответственно, значением "Bob". 2. Свойство с именем "age" и, соответственно, значением 50.

Мы можем предположить, что объект user – это не что иное, как ящик с 2-мя папками, которые подписаны «name» и «age». Также у нас есть возможность добавить в ящик новые папки в любой момент. Либо удалить их. Или же прочитать содержимое.

Чтобы обратиться к свойствам воспользуемся записью «через точку»:

// получение свойств объекта:
alert( user.name ); // Bob
alert( user.age ); // 50

Значение способно быть любого типа. Попробуем добавить свойство, имеющее логическое значение:

user.isAdmin = true;

А чтобы удалить свойства, нам пригодится оператор delete:

delete user.age;

Что касается имени свойства, то оно может включать в себя несколько слов, но в этом случае оно должно заключаться в кавычки:

let user = {
  name: "Bob",
  age: 50,
  "likes birds": true  // имя свойства из нескольких слов в кавычках
};

Последнее свойство объекта может оканчиваться запятой:

 let user = {
  name: "Bob",
  age: 50,
}

Что это за «висячая запятая»? На самом деле, она здесь не просто так. Реализованный подход упростит добавление, перемещение и удаление свойств в JavaScript, ведь все строки нашего объекта становятся одинаковыми.

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

Теперь давайте поговорим о том, как реализовать создание массива из объектов в JavaScript. Но для начала создадим объект с помощью специального метода:

    var myNewObject = {
    key1: value1,
    key2: value2,
    ...
}

Кстати, для этих целей существуют и другие методы:

    /* создаём пустой объект */
var emptyObject = new Object();

var someObject = new Object( {0:"one", 1:"two"} );
/* получаем объект someObject, 
у которого заданы key:value 
    0: "one",
    1: "two"
*/

var fullObject = new Object( {first : "one", second : "two"} );
/* получаем объект fullObject, 
у которого заданы key:value 
    first: "one",
    second: "two"
*/

Кроме того, мы можем задать ключи и значения объектов, если обратимся к нашим объектам в JavaScript, как к ассоциативному массиву:

    var customObject = new Object();

customObject["id"] = "1";
customObject["name"] = "goodObject";

/* На выходе будет объект customObject:
    id: "1",
    name: "goodObject"
*/

Переходим непосредственно к созданию массива объектов:

    var arrObjects = []; // объявляем массив

arrObjects[0] = {
    id: "1",
    name: "firstArrElement"
}
arrObjects[1] = {
    id: "2",
    name: "secondArrElement"
}

/* На выходе мы получим массив из 2 объектов, у которых заданы id и name */

Вот и всё! Более продвинутые навыки вы всегда сможете получить на наших курсах!

При подготовке статьи использовались следующие материалы:

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто