The other day I posted about there being no “delete an arbitrary element” method on Array in Javascrip. The problem being that I tried the solution I am about to present, but made the biggest School Boy Error possible – I didn’t read the documentation correctly!
Whilst I maintain that my solution removes the need to first find the elements, and then delete them (which is better ;). It must be noted that Array.prototype.splice allows you to remove arbitrary elements if you know the index and the number of elements you want to remove.
Anyway, here goes, to remove 1 element from an Array from an arbitrary position:
var values = ["Ah", "hello", "world"]; var result = values.splice(1,1); console.log(values); console.log(result);
This removes the “hello” from the values array in place and returns the elements removed. The result is values = [“Ah”, “world”] and result = [“hello”]
Thanks to @dezfowler