💡 Создание копий массивов
С помощью метода
Например:
WebDEV #советы #coding #js
С помощью метода
copyWithin() можно копировать элементы в определенное место массива. Методу необходимо передать аргументы: первый аргумент — индекс целевой позиции, то есть то место в новом массиве, куда необходимо вставить данные. Второй аргумент — начальный индекс позиции источника элементов.Например:
let a = [1, 2, 3, 4, 5];Копирование элементов из массива в определенное место массива.
a.copyWithin(0, 2); // 0 — начальный индекс позиции нового массива, куда необходимо вставить элементы массива a с индексом 2
console.log(a); // [3, 4, 5, 4, 5]. На место элементов 1,2,3, вставили элементы 3,4,5, а остальные элементы оставили как были в исходном массиве.
WebDEV #советы #coding #js
💡 Методы shift/unshift
Метод
Например:
WebDEV #советы #coding #js
Метод
shift() удаляет из начала массива один или несколько элементов. Метод unshift() добавляет в начало массива один или несколько элементов.Например:
let dishes = ["Кастрюля", "Сковородка"];— добавление в массив методом
dishes.unshift('Половник'); // Вставляем в начало массива слово 'Половник'
console.log(dishes); // Выводим массив ["Половник", "Кастрюля", "Сковородка"]
dishes.shift(); // Удаляем слово из начала массива
console.log(dishes); // ["Кастрюля", "Сковородка"]
unshift() и удаление из массива методом shift().WebDEV #советы #coding #js
💡 Немного о «length»
Свойство
Например:
Продолжение следует...
WebDEV #советы #coding #js
Свойство
length — это наибольший индекс массива плюс один. С помощью этого свойства можно уменьшить длину массива.Например:
let arr = [1, 2, 3, 4, 5];Уменьшаем массив
arr.length = 2; // укорачиваем до двух элементов
console.log( arr ); // Array [ 1, 2 ]
arr.length = 5; // возвращаем length
console.log(arr); // [ 1, 2, <3 empty slots> ]
console.log( arr[3] ); // undefined: как видим, значения не восстановились
arr до двух элементов. Уменьшение массива происходит безвозвратно. Если снова обратиться к индексу [3], то получим undefined.Продолжение следует...
WebDEV #советы #coding #js
💡 Немного о «length»
Если мы можем уменьшить количество элементов в массиве, то можем и полностью очистить массив с помощью свойства
Например:
WebDEV #советы #coding #js
Если мы можем уменьшить количество элементов в массиве, то можем и полностью очистить массив с помощью свойства
arr.length=0.Например:
let arr = [1, 2, 3, 4, 5];Очищением массива с помощью свойства
arr.length = 0;
console.log( arr ); // Array []
arr.length=0.WebDEV #советы #coding #js
💡 Подборка советов по массивам в js
▫️ Поиск элементов в массиве
▫️ Получение фрагмента массива
▫️ Сортировка массива
▫️ Получение строкового представления массива
▫️ Создание копий массивов
▫️ Методы pop/push
WebDEV #подборка #советы #coding #js
▫️ Поиск элементов в массиве
▫️ Получение фрагмента массива
▫️ Сортировка массива
▫️ Получение строкового представления массива
▫️ Создание копий массивов
▫️ Методы pop/push
WebDEV #подборка #советы #coding #js
💡 Метод new Array()
... Но при этом, если массив будет состоять из одного числового элемента, то его элементы будут
Например:
... Но при этом, если массив будет состоять из одного числового элемента, то его элементы будут
undefined.Например:
let arr = new Array(2);Чтобы такого не было при инициализации массива лучше пользоваться квадратными скобками:
console.log(arr[0]); //undefined
let arr = [];WebDEV #советы #coding #js
💡 Многомерные массивы
Если в массив a мы поместим массив
Он может выглядеть так:
Например:
Если в массив a мы поместим массив
a1,a2…an, то получим многомерный массив. Он может выглядеть так:
let a = [[1,2,3],[4,5,6],[7,8,9]];В многомерных массивах можно обращаться как к отдельным элементам, так и к элементам внутри элемента.
Например:
let a = [[1,2,3],[4,5,6],[7,8,9]];WebDEV #советы #coding #js
let b = a[0][2];
//[0] — первый элемент массива с индексом 0
//[2] — третий элемент первого элемента массива
console.log(b); // 3
💡 Перебрать все элементы и получить новый изменённый массив
С циклом:
Без цикла:
WebDEV #советы #coding #js
С циклом:
let names = ["Jack", "Jecci", "Ram", "Tom"];
let upperCaseNames = [];
for (let i = 0, totalNames = names.length; i < totalNames; i = i + 1) {
upperCaseNames[i] = names[i].toUpperCase();
}
Без цикла:
let names = ["Jack", "Jecci", "Ram", "Tom"];Примечание. Если вы используете
let upperCaseNames = names.map(name => name.toUpperCase());
map, в процессе перебора нельзя сделать break, continue или return. Но если возникает необходимость, такие случаи обычно сводятся к применению методов every или some.WebDEV #советы #coding #js
💡 Проверить, подходит ли условию каждый элемент массива
Если использовать цикл:
Если использовать цикл:
let num = [1, 2, 3, 4, 5, 0];Используя
for (let i = 0, total = num.length; i < total; i = i + 1) {
if (i <= 0) {
console.log("0 present in array");
}
}
every:let num = [1, 2, 3, 4, 5, 0];
let isZeroFree = num.every(e => e > 0);
if (!isZeroFree) {
console.log("0 present in array");
}
WebDEV #советы #coding #js