Skip to content

Instantly share code, notes, and snippets.

@lancevo
Created August 13, 2019 14:12
Show Gist options
  • Select an option

  • Save lancevo/ac2702b300b7613dc7c404f8ee9742b1 to your computer and use it in GitHub Desktop.

Select an option

Save lancevo/ac2702b300b7613dc7c404f8ee9742b1 to your computer and use it in GitHub Desktop.

Revisions

  1. Lance Vo created this gist Aug 13, 2019.
    17 changes: 17 additions & 0 deletions filterarrayinplace.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,17 @@
    function filterInPlace(array, condition) {
    let iOut = 0;
    for (let i = 0; i < array.length; i++) {
    if (condition(array[i])) {
    array[iOut++] = array[i];
    }
    }

    array.length = iOut;
    }

    const arr = [];
    for (let i = 0; i<100; i++) {
    arr.push(i);
    }

    filterInPlace(arr, (n) => n % 2); // [0,2,4,6...]