Введение
В этом практическом занятии мы изучим, как извлекать соответствующие значения из массива и возвращать удаленные элементы. Мы узнаем, как использовать методы Array.prototype.filter(), Array.prototype.includes() и Array.prototype.push() для фильтрации значений, указанных в массиве для извлечения, и изменения исходного массива. В конце этого практического занятия вы будете лучше понимать, как манипулировать массивами в JavaScript.
Как извлечь соответствующие значения из массива
Чтобы извлечь конкретные значения из массива с использованием JavaScript, следуйте этим шагам:
- Откройте Терминал/SSH и введите
node, чтобы начать практиковаться в написании кода. - Используйте
Array.prototype.filter()иArray.prototype.includes()для фильтрации ненужных значений и создания нового массива. - Установите
Array.prototype.length, чтобы изменить исходный массив, сбросив его длину до0. - Используйте
Array.prototype.push(), чтобы заполнить исходный массив только извлеченными значениями. - Используйте
Array.prototype.push(), чтобы отслеживать удаленные значения в новом массиве.
Вот пример функции, которая реализует эти шаги:
const pullAtValue = (arr, pullArr) => {
let removed = [],
pushToRemove = arr.forEach((v, i) =>
pullArr.includes(v) ? removed.push(v) : v
),
mutateTo = arr.filter((v, i) => !pullArr.includes(v));
arr.length = 0;
mutateTo.forEach((v) => arr.push(v));
return removed;
};
Вы можете использовать эту функцию для удаления конкретных значений из массива и возврата удаленных элементов так:
let myArray = ["a", "b", "c", "d"];
let pulled = pullAtValue(myArray, ["b", "d"]);
// myArray = [ 'a', 'c' ], pulled = [ 'b', 'd' ]
Резюме
Поздравляем! Вы завершили практическое занятие "Извлечение соответствующих значений из массива". Вы можете практиковаться в других лабораторных работах в LabEx, чтобы улучшить свои навыки.