简介
在本实验中,我们将探索 JavaScript 中的 takeWhile 函数。该函数会从数组中移除元素,直到满足某个条件为止,并返回已移除的元素。通过本实验,你将学习如何在自己的代码中实现此函数,并了解它在各种编程场景中的用途。
根据条件移除数组元素
要根据条件移除数组中的元素,请打开终端/SSH 并输入 node。
takeWhile 函数会从数组中移除元素,直到传入的函数返回 false,然后返回已移除的元素。
以下是使用 takeWhile 函数的步骤:
- 使用
for...of循环遍历Array.prototype.entries()上的数组。 - 循环直到函数返回的值为假值。
- 使用
Array.prototype.slice()返回已移除的元素。 fn回调函数接受一个参数,即元素的值。
使用以下代码实现 takeWhile 函数:
const takeWhile = (arr, fn) => {
for (const [i, val] of arr.entries()) if (!fn(val)) return arr.slice(0, i);
return arr;
};
以下是使用 takeWhile 函数根据条件从数组中移除元素的示例:
takeWhile([1, 2, 3, 4], (n) => n < 3); // [1, 2]
总结
恭喜你!你已完成「满足条件时移除数组元素」实验。你可以在 LabEx 中练习更多实验来提升你的技能。