Removes elements in an array until the passed function returns true. Returns the remaining elements in the array.

Loop through the array, using Array.prototype.slice() to drop the first element of the array until the returned value from the function is true.
Returns the remaining elements.

代码片段

const dropWhile = (arr, func) => {
  while (arr.length > 0 && !func(arr[0])) arr = arr.slice(1);
  return arr;
};

使用样例

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