HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Примитивные типы данных, с которыми мы работали до сих пор, невозможно изменить. Любые функции и методы над ними возвращают новые значения, но не могут ничего сделать со старым.</p>
1 <p>Примитивные типы данных, с которыми мы работали до сих пор, невозможно изменить. Любые функции и методы над ними возвращают новые значения, но не могут ничего сделать со старым.</p>
2 <p>С массивами это правило не работает. Массивы могут меняться: увеличиваться, уменьшаться, изменять значения по индексам. Ниже мы разберем все эти операции.</p>
2 <p>С массивами это правило не работает. Массивы могут меняться: увеличиваться, уменьшаться, изменять значения по индексам. Ниже мы разберем все эти операции.</p>
3 <h2>Изменение элементов массива</h2>
3 <h2>Изменение элементов массива</h2>
4 <p>Синтаксис изменения элемента массива практически такой же, как и при обращении к элементу массива. Разница лишь в наличии присваивания:</p>
4 <p>Синтаксис изменения элемента массива практически такой же, как и при обращении к элементу массива. Разница лишь в наличии присваивания:</p>
5 <p>Самое неожиданное в данном коде - изменение константы. Константы в JavaScript не совсем то, как мы себе это представляли раньше. Константы хранят ссылку на данные (подробнее об этом в следующих уроках), а не сами данные. Это значит что менять данные можно, но нельзя заменить ссылку. Технически это значит, что мы не можем заменить все значение константы целиком:</p>
5 <p>Самое неожиданное в данном коде - изменение константы. Константы в JavaScript не совсем то, как мы себе это представляли раньше. Константы хранят ссылку на данные (подробнее об этом в следующих уроках), а не сами данные. Это значит что менять данные можно, но нельзя заменить ссылку. Технически это значит, что мы не можем заменить все значение константы целиком:</p>
6 <h2>Добавление элемента в массив</h2>
6 <h2>Добавление элемента в массив</h2>
7 <p>Метод push() добавляет элемент в<em>конец</em>массива:</p>
7 <p>Метод push() добавляет элемент в<em>конец</em>массива:</p>
8 <p>Метод unshift() добавляет элемент в<em>начало</em>массива:</p>
8 <p>Метод unshift() добавляет элемент в<em>начало</em>массива:</p>
9 <p>Иногда индекс добавления известен сразу и в таком случае добавление работает так же как и изменение:</p>
9 <p>Иногда индекс добавления известен сразу и в таком случае добавление работает так же как и изменение:</p>
10 <h2>Удаление элемента из массива</h2>
10 <h2>Удаление элемента из массива</h2>
11 <p>Удалить элемент из массива можно с помощью специальной конструкции<a>delete</a>: delete arr[index].</p>
11 <p>Удалить элемент из массива можно с помощью специальной конструкции<a>delete</a>: delete arr[index].</p>
12 <p>Пример:</p>
12 <p>Пример:</p>
13 <p>Этот способ обладает рядом недостатков, завязанных на особенности внутренней организации языка JavaScript. Например, после такого удаления, можно с удивлением заметить, что размер массива не изменился:</p>
13 <p>Этот способ обладает рядом недостатков, завязанных на особенности внутренней организации языка JavaScript. Например, после такого удаления, можно с удивлением заметить, что размер массива не изменился:</p>
14 <p>Есть и другие особенности и последствия использования этого оператора, в которые сейчас не будем углубляться. Здесь мы его привели лишь для примера и не рекомендуем использовать при написании кода. В общем случае уменьшение размера массива - нежелательная операция. Подробнее об этом поговорим в одном из следующих уроков.</p>
14 <p>Есть и другие особенности и последствия использования этого оператора, в которые сейчас не будем углубляться. Здесь мы его привели лишь для примера и не рекомендуем использовать при написании кода. В общем случае уменьшение размера массива - нежелательная операция. Подробнее об этом поговорим в одном из следующих уроков.</p>