💡 Поиск элементов в массиве
Метод
Например:
Продолжение следует...
WebDEV #советы #coding #js
Метод
lastIndexOf()
возвращает индекс последнего вхождения элементов в массив, если элемента нет, то возвращается -1
.Например:
let a = [1, 2, 3, 4, 5, 6, 7, 5, 8];В примере в массиве
console.log(a.lastIndexOf(1));
console.log(a.lastIndexOf(23));
a
ищем индекс элемента 1
и получаем [0]
. Элемента 23
в массиве нет, поэтому в консоли получаем -1
.Продолжение следует...
WebDEV #советы #coding #js
💡 Поиск элементов в массиве
Метод
Например:
Продолжение следует...
WebDEV #советы #coding #js
Метод
find()
ищет элементы в массиве по передаваемой ему функции. Если функция возвращает true
, то метод возвращает первый найденный элемент.Например:
a.find(x => x.id === my_id);В примере функция x ищет элемент
id
, который должен иметь значение my_id
. Если он находит my_id
в массиве, то возвращает этот элемент. Если элемента нет, то возвращается undefined
.Продолжение следует...
WebDEV #советы #coding #js
💡 Подборка советов по массивам в js
▫️ Фильтрация массива с помощью метода filter()
▫️ Метод reduce()
▫️ Перебор массива с помощью метода forEach()
▫️ Перебор массива с использованием оператора for...of
▫️ Добавление элементов в конец массива
▫️ Добавление элементов в начало массива
WebDEV #подборка #советы #coding #js
▫️ Фильтрация массива с помощью метода filter()
▫️ Метод reduce()
▫️ Перебор массива с помощью метода forEach()
▫️ Перебор массива с использованием оператора for...of
▫️ Добавление элементов в конец массива
▫️ Добавление элементов в начало массива
WebDEV #подборка #советы #coding #js
💡 Поиск элементов в массиве
Метод
Например:
Продолжение следует...
WebDEV #советы #coding #js
Метод
includes()
ищет элемент массива и возвращает true
, если элемент есть, возвращает false
, если элемента нет. Методу можно передавать два значения — сам элемент и индекс.Например:
let a = [1, 2, 3, 4, 5, 6, 7, 5, 8];Поиск элемента массива методом
console.log(a.includes(1, 2));
includes()
. В примере метод вернет false
, потому что на месте индекса [2]
нет элемента 1
. Элемент 1
находится под индексом [0]
.Продолжение следует...
WebDEV #советы #coding #js
💡 Получение фрагмента массива
Метод
Например:
WebDEV #советы #coding #js
Метод
slice()
используют для получения фрагментов массива по его индексам.Например:
let a = [1, 2, 3, 4, 5, 6, 7, 8, 9];В первом выводе из массива a получается фрагмент массива начиная с индекса
console.log(a.slice(4)); // [5, 6, 7, 8, 9 ]
console.log(a.slice(3,7)); // [4, 5, 6, 7 ]
4
и до конца [5, 6, 7, 8, 9]
. Во втором случае получим массив с 3
по 7
индекс [4, 5, 6, 7]
, при этом последний элемент в массив не входит.WebDEV #советы #coding #js
💡 Сортировка массива
Для сортировки массива в алфавитном порядке используют метод
Например:
Чтобы числа и цифры в массиве шли по порядку, используют функцию
Продолжение следует...
WebDEV #советы #coding #js
Для сортировки массива в алфавитном порядке используют метод
sort()
.Например:
let a = [1, 2, 3, 10, 11];Сортировка массивов методом
let b = ["b", "c", "a"];
a.sort(); // [1, 10, 11, 2, 3]
b.sort(); // ["a", "b", "c"]
sort()
.Чтобы числа и цифры в массиве шли по порядку, используют функцию
(a, b) => a – b
.Продолжение следует...
WebDEV #советы #coding #js
💡 Сортировка массива
Для расположения элементов массива в обратном порядке используют метод
Например:
Продолжение следует...
WebDEV #советы #coding #js
Для расположения элементов массива в обратном порядке используют метод
reverse()
.Например:
let a = [1, 2, 3, 10, 11];Расположение элементов массива в обратном порядке методом
let b = ['b', 'c', 'a'];
a.reverse(); // [11, 10, 3, 2, 1]
b.reverse(); // ["a", "c", "b"]
reverse()
.Продолжение следует...
WebDEV #советы #coding #js
💡 Получение строкового представления массива
Для извлечения элементов из массива в виде строки используют метод
Например:
WebDEV #советы #coding #js
Для извлечения элементов из массива в виде строки используют метод
toString()
или a.join()
.Например:
let a = [1, 10, 3, 2, 11];Получение строкового представления из массива методом
let b=['b','c','a'];
console.log(a.toString()); // 1,10,3,2,11
console.log(b.toString()); // b,c,a
console.log(a.join()); // 1,10,3,2,11
console.log(a.join(', ')); //1, 10, 3, 2, 11
console.log(b.join()); //1,10,3,2,11
console.log(b.join(', ')); //b, c, a
toString()
и a.join()
.WebDEV #советы #coding #js
💡 Создание копий массивов
С помощью метода
Например:
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