array remove by value test
by Laurens Maneschijn
JavaScript
// remove values from array test.
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
function arrayWithoutValue(array, value){
// NB: (filter) returns new array (original array is unchanged)
return array.filter(function(v){return v !== value;});
}
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/splice
function removeValueFromArray(array, value){
// NB: (splice) modifies the original array
var i=array.indexOf(value);
if(i>=0){
array.splice(i,1);
}
}
function removeAllValueFromArray(array, value){
// NB: (splice) modifies the original array
var i=array.indexOf(value);
while(i>=0){
array.splice(i,1);
i=array.indexOf(value);
}
}
var o1,o2,o3,arr;
o1={n:1},o2={n:2},o3={n:3};
arr = [o1,o2,o2,o3];
console.table(arr);
removeAllValueFromArray(arr,o2);
console.table(arr);
o1={n:1},o2={n:2},o3={n:3};
arr = [o1,o2,o2,o3];
console.table(arrayWithoutValue(arr,o2));