deno.land / std@0.224.0 / collections / _utils.ts
12345678910111213141516171819202122232425262728293031323334// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.// This module is browser compatible.
/** * Filters the given array, removing all elements that do not match the given predicate * **in place. This means `array` will be modified!**. */export function filterInPlace<T>( array: Array<T>, predicate: (el: T) => boolean,): Array<T> { let outputIndex = 0;
for (const cur of array) { if (!predicate(cur)) { continue; }
array[outputIndex] = cur; outputIndex += 1; }
array.splice(outputIndex);
return array;}
/** * Produces a random number between the inclusive `lower` and `upper` bounds. */export function randomInteger(lower: number, upper: number): number { return lower + Math.floor(Math.random() * (upper - lower + 1));}
Version Info