2019-04-21
描述
从左依次移除数组中的元素直到函数返回 true
。最终返回数组中剩下的元素。
提示
- 对数组进行迭代
- 使用
Array.prototype.slice()
移除数组中的第一个元素 - 当函数返回
true
时停止移除 - 返回剩余的元素
代码
const dropWhile = (arr, func) => {
while (arr.length > 0 && !func(arr[0])) arr = arr.slice(1);
return arr;
};
示例
从左往右依次移除小于 3 的元素直到函数返回 true
:
dropWhile([1, 2, 3, 4, 0], n => n >= 3); // [3,4,0]