Фриланс › Форумы › Помощь в программировании на JavaScript › Работа с массивами на JavaScript › Какие существуют методы для работы с массивом в JavaScript?
Помечено: array, javascript
В этой теме 19 ответов, 2 участника, последнее обновление admin 3 года/лет, 5 мес. назад.
-
АвторСообщения
-
22.12.2018 в 13:01 #4135
Все методы для работы с массивами на javaScript
-
22.12.2018 в 13:17 #4136
Метод concat()
Метод для создания массива путем объединения нескольких массивов.Например, если массив a=[1,2,3]и массив b=[“x”,”y”,”z”], то
результатом выражения rez = a.concat(b) будет массив rez = [1,2,3,”x”,”y”,”z”]. Массивы
a и b при этом не изменяются -
22.12.2018 в 13:19 #4137
Метод every()
Методом возвращается логическое значение true, если все элементы массива удовлетворяют некоторому критерию, и false — в обратном случае. Характер критерия определяется функцией, которая передается аргументом методу. -
22.12.2018 в 13:20 #4138
Метод filter()
Результатом метода возвращается массив, который получается фильтрацией исходного массива.
Алгоритм фильтрации определяется функцией, которая передается аргументом методу. -
22.12.2018 в 13:42 #4139
Метод forEach()
Для каждого элемента массива вызывается функция переданная методу.
В данном случае имеет место некое подобие оператора цикла, выполняемого по элементам массива.
Пример:var B=[10,20,30,40,50,60,70,80,90]; //массив
// Функция отображающая номер элемента массива и значение этого элемента
function fillIt(value,index,array)
{
document.write(index+’: ‘+value)
}
//вызов метода
B.forEach(fillIt) -
22.12.2018 в 13:50 #4142
Метод indexOf()
Метод предназначен для поиска элемента в массиве. Искомый элемент (значение) передается аргументом методу.
Поиск выполняется в массиве, из которого вызывается метод. Результатом метод возвращает индекс первого вхождения элемента в массив. Если элемента
в массиве нет, возвращается значение -1.
Можно указать второй аргумент. Он определяет индекс в массиве, с которого начинается поиск элемента.
Например, если массив a=[1,5,3,7,5,6], то результатом выражения a.indexOf(5) является значение 1(первое вхождение значения 5 в массив),
значением выражения a.indexOf(5,2)является 4 (поиск значения 5 начинается с позиции с индексом 2),
а значение выражения a.indexOf(2)равно -1 (в массиве нет элемента со значением 2) -
22.12.2018 в 13:54 #4143
Метод join()
Метод предназначен для формирования на основе значений элементов массива текстовой строки. Элементы объединяются в текстовую
строку с использованием разделителя. Разделителем служит текст,
переданный аргументом методу. Если у метода аргумента нет, то по
умолчанию разделителем является запятая. Например, если a=[1,2,3],
то результатом выражения a.join()будет текст “1,2,3”. Результатом выражения a.join(“*”)является текст “1*2*3” -
22.12.2018 в 14:00 #4145
Метод lastIndexOf()
Метод предназначен для поиска элемента в массиве, но только в данном случае (в отличие от метода indexOf()) поиск начинается с конца массива.
Аргументом передается значение элемента для поиска в массиве, из которого вызывается метод. Результат метода — индекс последнего вхождения элемента в массив. Если элемента в массиве нет, возвращается значение -1.
Второй необязательный аргумент метода определяет индекс в массиве, с которого начинается поиск.
Например, если массив a=[1,5,3,7,5,6], то результатом выражения a.lastIndexOf(5)является значение 4(последнее вхождение значения 5в массив), значением выражения a.lastIndexOf(5,3) является 1 (поиск значения 5 начинается с позиции с индексом 3 с конца в начало массива), а значение выражения a.lastIndexOf(2) равно -1 (в массиве нет элемента со значением 2) -
22.12.2018 в 14:03 #4146
Метод map()
В результате вызова метода создается новый массив, который получается применением функции, указанной аргументом метода, к каждому элементу исходного массива (из которого вызывается метод).
Например, если массив a=[1,9,25], то результатом выражения a.map(Math.sqrt) является массив [1,3,5] (элементы массива получаются вычислением квадратного корня из элементов исходного массива). Массив a при этом не изменяется -
22.12.2018 в 14:05 #4147
Метод pop()
Методом удаляется последний элемент массива. Значение удаляемого элемента массива возвращается результатом метода. Например, если массив a=[1,2,3], то результатом выражения a.pop()является 3, а после выполнения данной команды переменная aбудет ссылаться на массив [1,2] (удален последний элемент массива) -
22.12.2018 в 14:09 #4148
Метод push()
Метод предназначен для добавления элементов в конец массива. Метод вызывается из объекта массива, а добавляемые в массив значения передаются аргументами методу. Результатом метода возвращается новая длина массива. Например, если массив a=[1,2,3], то значение выражения a.push(“x”)равно 4(количество элементов в массиве после
добавления нового элемента), а после выполнения команды переменная a будет ссылаться на массив [1,2,3,”x”] -
22.12.2018 в 14:19 #4149
Метод reduce()
Метод используется для сведения массива к единому значению. Алгоритм вычисления такого значения базируется на последовательном переборе элементов массива с выполнением определенных операций, которые задаются функцией, переданной аргументом методу. Элементы массива перебираются в направлении увеличения индекса.
Пояснения к методу
Вызов метода:var A=[5,3,2];
A.reduce(Math.pow);
//функция Math.pow возводит первый аргумент функции в степень заданную во втором аргументе функцииМетод вызывается из массива, а аргументом ему передается функция двух переменных. Процедура выполнения метода такая: сначала переданная аргументом функция вызывается с аргументами, значения которых совпадают со значениями первых двух элементов массива. Вычисляется значение функции, которое становится первым аргументом функции.
Вторым аргументом функции становится третий элемент массива.
Вычисляется новое значение функции, и оно снова становится первым аргументом этой же функции. Вторым ее аргументом становится следующий (четвертый) элемент массива. И так далее, пока не будут перебраны все элементы массива. Полученное в итоге значение является результатом вызова метода reduce(). -
22.12.2018 в 14:24 #4150
Метод reduceRight()
Метод предназначен для вычисления на основе массива некоторого значения и подразумевает последовательный перебор элементов массива.
Действия, выполняемые с элементами массива, определяются функцией, переданной аргументом методу. В отличие от метода reduce(), в данном случае элементы массива перебираются в направлении уменьшения индекса. -
22.12.2018 в 14:28 #4151
Метод reverse()
Метод предназначен для пересортировки элементов массива в обратном порядке. Например, если массив a=[1,2,3], то после выполнения команды a.reverse() переменная a будет ссылаться на массив [3,2,1] -
22.12.2018 в 14:52 #4152
Метод shift()
Методом удаляется начальный элемент массива. Результатом метода является значение удаляемого элемента массива. Например, если массив a=[1,2,3], то результатом выражения a.shift()является значение 1 (значение первого элемента массива), а после выполнения данной команды переменная aбудет ссылаться на массив [2,3](в исходном
массиве удален первый элемент) -
22.12.2018 в 14:57 #4153
Метод slice()
Методом возвращается массив, который получается считыванием группы элементов исходного массива, из которого вызывается метод (возвращается поверхностная копия массива). Первый аргумент метода определяет индекс элемента в исходном массиве, с которого начинается считывание. Можно указать и второй аргумент, который
определяет индекс первого несчитываемого элемента. Если второй аргумент не указан, считываются все элементы до конца массива. Исходный массив в любом случае не изменяется.
Например, если массив a=[10,20,30,40,50], то результатом выражения a.slice(1,3) является массив [20,30] (считываются элементы с индексами от 1 до 2 включительно
(числа 20 и 30 соответственно) — элемент 40 с индексом 3 не считывается), а результатом выражения a.slice(2) является массив [30,40,50](все эле-менты до конца массива, начиная с элемента 30, имеющего индекс 2) -
22.12.2018 в 15:03 #4154
Метод some()
Методом возвращается логическое значение true, если хотя бы один из элементов массива удовлетворяет некоторому критерию, и false в противоположном случае. Критерий проверки элементов определяется функцией, переданной аргументом методу.
Пример использования:function isIt(value,index,array){
return (index<=array.length/2)&&(value<30);
// будет выведено true если в первой половине массива есть значение меньшее 30
};
var B=[1,2,,4,5,6,7,,9]
document.write(B.some(isIt)); -
22.12.2018 в 15:09 #4155
Метод sort()
Метод для сортировки элементов массива. Исходный массив изменяется (сортируется) и возвращается результатом метода. Важно то, что сортировка выполняется на основе текстовых представлений для элементов массива. По умолчанию критерием для сортировки является код символов в кодовой таблице, поэтому результаты сортировки могут быть на первый взгляд неожиданными. Также аргументом методу может передаваться функция, которая определяет пользовательские критерии для сортировки элементов массива.
Пример использования с собственной функцией сортировки//Функция сортировки – сортирует массив по возрастанию значений
function mySort(a,c)
{
if(a1) return 1
return 0
};
var A = [3,1,4,2];
A.sort(mySort) // A = [1,2,3,4] -
22.12.2018 в 15:16 #4156
Метод splice()
Метод предназначен для удаления части массива и вставки на его место нового фрагмента. Первым аргументом методу передается индекс элемента, начиная с которого выполняется удаление.
Второй аргумент определяет количество удаляемых элементов. Если указаны другие аргументы, то они будут добавлены в массив вместо удаленного фрагмента. Результатом метода возвращается массив из удаленных элементов. Например, если массив a=[10,20,30,40,50], то результатом выражения a.splice(1,3,”x”,”y”)является массив [20,30,40](удаляемые элементы — всего 3элемента, начиная с элемента с индексом 1), а переменная aпосле выполнения данной команды будет ссылаться на массив [10,”x”,”y”,50](вместо удаленных элементов вставлены элементы “x”и “y”) -
22.12.2018 в 15:19 #4157
Метод unshift()
Значения, переданные аргументами методу, добавляются в начало массива. Результатом метода возвращается длина массива (с учетом вставленных элементов). Например, если массив a=[1,2,3], то результатом выражения a.unshift(“x”,”y”)является число 5(размер массива с учетом новых добавленных элементов), а переменная a будет ссылаться на массив [“x”,”y”,1,2,3](элементы “x”и “y”вставляются в массив в обратном порядке по сравнению с тем, как они переданы аргументами методу) -
АвторСообщения
Для ответа в этой теме необходимо авторизоваться.