Array.splice() Unexpected Behavior When Index Is Undefined
Today I discovered something you should know about Array.splice()
in Javascript. According to this page splice()
has a first parameter of index
which is supposed to be a number representing the index of the array you wish to splice at. Well, apparently when this index
is undefined it acts as though you passed 0
instead.
// Create a sample array var array = [ 'a', 'b', 'c' ]; console.log(array); // Remove 1 element from index undefined array.splice(undefined, 1); console.log(array); /** * OUTPUT * * [ 'a', 'b', 'c' ] * [ 'b', 'c' ] */
Keep this in mind next time you’re using Array.splice()
as it is very unexpected behaviour.