0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>В этой статье поговорим об объектах в языке программирования JavaScript. Рассмотрим, что это такое и как создавать объект. Также уделим время созданию массива объектов.</p>
1
<p>В этой статье поговорим об объектах в языке программирования JavaScript. Рассмотрим, что это такое и как создавать объект. Также уделим время созданию массива объектов.</p>
2
<p>Как вам хорошо известно, в JavaScript существуют разные типы данных. 7 из них являются примитивными, ведь они содержат лишь одно значение, причём неважно, строка это, число, либо что-нибудь иное. Пришло время поговорить и про объекты. Они применяются в JavaScript, например, в целях хранения коллекций разных значений, а также каких-нибудь сложных сущностей. В целом они используются довольно часто, и это особенность языка. Разумеется, мы должны их понимать.</p>
2
<p>Как вам хорошо известно, в JavaScript существуют разные типы данных. 7 из них являются примитивными, ведь они содержат лишь одно значение, причём неважно, строка это, число, либо что-нибудь иное. Пришло время поговорить и про объекты. Они применяются в JavaScript, например, в целях хранения коллекций разных значений, а также каких-нибудь сложных сущностей. В целом они используются довольно часто, и это особенность языка. Разумеется, мы должны их понимать.</p>
3
<h2>Синтаксис создания объекта</h2>
3
<h2>Синтаксис создания объекта</h2>
4
<p>Объект можно создать, используя фигурные скобки {…} с необязательным перечнем свойств. В нашем случае свойство является парой "ключ: значение", причём ключ здесь - это строка (называется ещё "именем свойства"), а вот уже значение бывает чем угодно.</p>
4
<p>Объект можно создать, используя фигурные скобки {…} с необязательным перечнем свойств. В нашем случае свойство является парой "ключ: значение", причём ключ здесь - это строка (называется ещё "именем свойства"), а вот уже значение бывает чем угодно.</p>
5
<p>Давайте представим объект в форме ящика, где лежат подписанные папки. Таким образом, каждый элемент данных лежит в своей папке, а на той папке написан ключ. Раз есть ключ, папку можно без проблем найти, и не только найти, но ещё удалить либо добавить что-нибудь в неё.</p>
5
<p>Давайте представим объект в форме ящика, где лежат подписанные папки. Таким образом, каждый элемент данных лежит в своей папке, а на той папке написан ключ. Раз есть ключ, папку можно без проблем найти, и не только найти, но ещё удалить либо добавить что-нибудь в неё.</p>
6
<p>Создадим пустой ящик объект в JavaScript, что можно сделать, используя один из 2-х вариантов синтаксиса:</p>
6
<p>Создадим пустой ящик объект в JavaScript, что можно сделать, используя один из 2-х вариантов синтаксиса:</p>
7
let user = new Object(); // синтаксис "конструктор объекта" let user = {}; // синтаксис "литерал объекта", литеральный синтаксис<p>Как правило, используется вариант с фигурными скобками {...}. В этом случае объявление называют литералом объекта либо литеральной нотацией.</p>
7
let user = new Object(); // синтаксис "конструктор объекта" let user = {}; // синтаксис "литерал объекта", литеральный синтаксис<p>Как правило, используется вариант с фигурными скобками {...}. В этом случае объявление называют литералом объекта либо литеральной нотацией.</p>
8
<h2>Особенности литералов и их свойства</h2>
8
<h2>Особенности литералов и их свойства</h2>
9
<p>Когда мы используем литеральный синтаксис {...}, у нас есть возможность помещать в объект сразу несколько свойств, соответственно, используя пары "ключ: значение":</p>
9
<p>Когда мы используем литеральный синтаксис {...}, у нас есть возможность помещать в объект сразу несколько свойств, соответственно, используя пары "ключ: значение":</p>
10
let user = { // объект name: "Bob", // под ключом "name" сохраняется значение "Bob" age: 50 // под ключом "age" сохраняется значение 50 };<p>Свойства объекта в JavaScript иногда называют поля объекта.</p>
10
let user = { // объект name: "Bob", // под ключом "name" сохраняется значение "Bob" age: 50 // под ключом "age" сохраняется значение 50 };<p>Свойства объекта в JavaScript иногда называют поля объекта.</p>
11
<p>Идём далее. Каждое свойство имеет ключ ("имя" либо "идентификатор"). После имени/идентификатора свойства идёт двоеточие ":", потом указывается значение свойства. Когда в объекте есть несколько свойств, они перечисляются через запятую.</p>
11
<p>Идём далее. Каждое свойство имеет ключ ("имя" либо "идентификатор"). После имени/идентификатора свойства идёт двоеточие ":", потом указывается значение свойства. Когда в объекте есть несколько свойств, они перечисляются через запятую.</p>
12
<p>В объекте user у нас находятся 2 свойства: 1. Свойство с именем "name" и, соответственно, значением "Bob". 2. Свойство с именем "age" и, соответственно, значением 50.</p>
12
<p>В объекте user у нас находятся 2 свойства: 1. Свойство с именем "name" и, соответственно, значением "Bob". 2. Свойство с именем "age" и, соответственно, значением 50.</p>
13
<p>Мы можем предположить, что объект user - это не что иное, как ящик с 2-мя папками, которые подписаны "name" и "age". Также у нас есть возможность добавить в ящик новые папки в любой момент. Либо удалить их. Или же прочитать содержимое.</p>
13
<p>Мы можем предположить, что объект user - это не что иное, как ящик с 2-мя папками, которые подписаны "name" и "age". Также у нас есть возможность добавить в ящик новые папки в любой момент. Либо удалить их. Или же прочитать содержимое.</p>
14
<p>Чтобы обратиться к свойствам воспользуемся записью "через точку":</p>
14
<p>Чтобы обратиться к свойствам воспользуемся записью "через точку":</p>
15
// получение свойств объекта: alert( user.name ); // Bob alert( user.age ); // 50<p>Значение способно быть любого типа. Попробуем добавить свойство, имеющее логическое значение:</p>
15
// получение свойств объекта: alert( user.name ); // Bob alert( user.age ); // 50<p>Значение способно быть любого типа. Попробуем добавить свойство, имеющее логическое значение:</p>
16
<p>А чтобы удалить свойства, нам пригодится оператор delete:</p>
16
<p>А чтобы удалить свойства, нам пригодится оператор delete:</p>
17
<p>Что касается имени свойства, то оно может включать в себя несколько слов, но в этом случае оно должно заключаться в кавычки:</p>
17
<p>Что касается имени свойства, то оно может включать в себя несколько слов, но в этом случае оно должно заключаться в кавычки:</p>
18
let user = { name: "Bob", age: 50, "likes birds": true // имя свойства из нескольких слов в кавычках };<p>Последнее свойство объекта может оканчиваться запятой:</p>
18
let user = { name: "Bob", age: 50, "likes birds": true // имя свойства из нескольких слов в кавычках };<p>Последнее свойство объекта может оканчиваться запятой:</p>
19
let user = { name: "Bob", age: 50, }<p>Что это за "висячая запятая"? На самом деле, она здесь не просто так. Реализованный подход упростит добавление, перемещение и удаление свойств в JavaScript, ведь все строки нашего объекта становятся одинаковыми.</p>
19
let user = { name: "Bob", age: 50, }<p>Что это за "висячая запятая"? На самом деле, она здесь не просто так. Реализованный подход упростит добавление, перемещение и удаление свойств в JavaScript, ведь все строки нашего объекта становятся одинаковыми.</p>
20
<h2>Создаём массив объектов</h2>
20
<h2>Создаём массив объектов</h2>
21
<p>Теперь давайте поговорим о том, как реализовать создание массива из объектов в JavaScript. Но для начала создадим объект с помощью специального метода:</p>
21
<p>Теперь давайте поговорим о том, как реализовать создание массива из объектов в JavaScript. Но для начала создадим объект с помощью специального метода:</p>
22
var myNewObject = { key1: value1, key2: value2, ... }<p>Кстати, для этих целей существуют и другие методы:</p>
22
var myNewObject = { key1: value1, key2: value2, ... }<p>Кстати, для этих целей существуют и другие методы:</p>
23
/* создаём пустой объект */ 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" */<p>Кроме того, мы можем задать ключи и значения объектов, если обратимся к нашим объектам в JavaScript, как к ассоциативному массиву:</p>
23
/* создаём пустой объект */ 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" */<p>Кроме того, мы можем задать ключи и значения объектов, если обратимся к нашим объектам в JavaScript, как к ассоциативному массиву:</p>
24
var customObject = new Object(); customObject["id"] = "1"; customObject["name"] = "goodObject"; /* На выходе будет объект customObject: id: "1", name: "goodObject" */<p>Переходим непосредственно к созданию массива объектов:</p>
24
var customObject = new Object(); customObject["id"] = "1"; customObject["name"] = "goodObject"; /* На выходе будет объект customObject: id: "1", name: "goodObject" */<p>Переходим непосредственно к созданию массива объектов:</p>
25
var arrObjects = []; // объявляем массив arrObjects[0] = { id: "1", name: "firstArrElement" } arrObjects[1] = { id: "2", name: "secondArrElement" } /* На выходе мы получим массив из 2 объектов, у которых заданы id и name */<p>Вот и всё! Более продвинутые навыки вы всегда сможете получить на наших курсах!</p>
25
var arrObjects = []; // объявляем массив arrObjects[0] = { id: "1", name: "firstArrElement" } arrObjects[1] = { id: "2", name: "secondArrElement" } /* На выходе мы получим массив из 2 объектов, у которых заданы id и name */<p>Вот и всё! Более продвинутые навыки вы всегда сможете получить на наших курсах!</p>
26
<p>При подготовке статьи использовались следующие материалы:</p>
26
<p>При подготовке статьи использовались следующие материалы:</p>
27
<ul><li>"<a>Объекты</a>";</li>
27
<ul><li>"<a>Объекты</a>";</li>
28
<li>"<a>Создание объектов и массива объектов в JavaScript</a>".</li>
28
<li>"<a>Создание объектов и массива объектов в JavaScript</a>".</li>
29
</ul>
29
</ul>