Why doesn't splicing an object from an array in Javascript return the array?
- by Allen Gould
I have an array of objects (say, a deck of cards):
var deck = [];
deck.push(new Card(suit, rank));
The following seems to work:
var card = deck.pop();
var card = deck.shift();
(pulling from the "top" or "bottom" of the deck respectively)
But if I want a card from the middle (say, if this was a hand of cards)
var card = deck.splice(2,1);
The object doesn't seem to get properly assigned to the variable (everything is undefined). Everything I look up says that splice should return the object that I'm removing - what am I missing?