array de objetos javascript - ¿Cómo puedo eliminar un elemento específico de una matriz?

array multidimensional javascript / javascript / arrays

Tengo una matriz de números y estoy usando el método .push() para agregarle elementos.

Estoy buscando el equivalente a algo como:

array.remove(number);

Melanie



Answer #1
var removed = helper.removeOne(arr, row => row.id === 5 );

var removed = helper.remove(arr, row => row.name.startsWith('BMW'));
var helper = {
 // Elimina y devuelve la primera aparición

 removeOne: function(array, predicate) {
  for (var i = 0; i < array.length; i++) {
   if (predicate(array[i])) {
    return array.splice(i, 1);
   }
  }
 },

 // Eliminar y devolver todas las apariciones

 remove: function(array, predicate) {
  var removed = [];

  for (var i = 0; i < array.length; ) {
   if (predicate(array[i])) {
    removed.push(array.splice(i, 1));
    continue;
   }
   i++;
  }
  return removed;
 },
};