Манипуляция массивами с использованием dropRightWhile

JavaScriptJavaScriptBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы научимся удалять элементы из конца массива на основе заданной функции. Функция dropRightWhile будет перебирать массив и удалять элементы справа до тех пор, пока функция не вернет true. Затем будут возвращены оставшиеся элементы массива. Это практическое занятие поможет вам понять, как манипулировать массивами в JavaScript с использованием высших порядковых функций.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/loops("Loops") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") subgraph Lab Skills javascript/variables -.-> lab-28280{{"Манипуляция массивами с использованием dropRightWhile"}} javascript/data_types -.-> lab-28280{{"Манипуляция массивами с использованием dropRightWhile"}} javascript/arith_ops -.-> lab-28280{{"Манипуляция массивами с использованием dropRightWhile"}} javascript/comp_ops -.-> lab-28280{{"Манипуляция массивами с использованием dropRightWhile"}} javascript/loops -.-> lab-28280{{"Манипуляция массивами с использованием dropRightWhile"}} javascript/array_methods -.-> lab-28280{{"Манипуляция массивами с использованием dropRightWhile"}} end

Удаление элементов массива справа на основе функции

Для удаления элементов из конца массива до тех пор, пока не будет выполнено определенное условие, следуйте шагам:

  1. Откройте Терминал/SSH и введите node, чтобы начать практиковаться в написании кода.
  2. Переберите массив с использованием Array.prototype.slice(), чтобы удалить последний элемент массива до тех пор, пока переданная func не вернет true.
  3. Верните оставшиеся элементы в массиве.

Вот пример реализации:

const dropRightWhile = (arr, func) => {
  let rightIndex = arr.length;
  while (rightIndex-- && !func(arr[rightIndex]));
  return arr.slice(0, rightIndex + 1);
};

Вы можете использовать эту функцию так:

dropRightWhile([1, 2, 3, 4], (n) => n < 3); // [1, 2]

Резюме

Поздравляем! Вы завершили практическое занятие по удалению элементов массива справа на основе функции. Вы можете выполнить больше практических заданий в LabEx, чтобы улучшить свои навыки.