De shift() methode verwijdert het eerste element van de array en geeft het element terug als resultaat. Deze methode wijzigt de lengte van de array.
var a = [1, 2, 3]; var b = a.shift(); console.log(a); // [2, 3] console.log(b); // 1
Syntax
arr.shift()
Return value
Het verwijderde element van de array; undefined als de array leeg is.
Description
De shift methode verwijdert het element met index nul en schuift de volgende waarden met hogere index, 1 positie terug. Het verwijderde element is het resultaat. Als de length property 0 is, is het resultaat undefined .
shift is bewust generiek; deze methode kan worden aangeroepen of toegepast op op array gelijkende objecten. Objects zonder length property, die de laatste van een serie van opeenvolgende, op nul gebaseerde numerische properties reflecteren, kunnen zich op een niet betekenisvolle manier gedragen.
Examples
Removing an element from an array
De volgend code toont de myFish array voor en na het verwijderen van het eerste element. Het toont ook het verwijderde element:
var myFish = ['angel', 'clown', 'mandarin', 'surgeon'];
console.log('myFish before:', JSON.stringify(myFish));
// myFish before: ['angel', 'clown', 'mandarin', 'surgeon']
var shifted = myFish.shift();
console.log('myFish after:', myFish);
// myFish after: ['clown', 'mandarin', 'surgeon']
console.log('Removed this element:', shifted);
// Removed this element: angel
Using shift() method in while loop
De shift() methode wordt vaak gebruikt als een conditie in een while lus. In het volgende voorbeeld verwijdert elke iteratie het volgende element van de array totdat ze leeg is:
var names = ["Andrew", "Edward", "Paul", "Chris" ,"John"];
while( (i = names.shift()) !== undefined ) {
console.log(i);
}
// Andrew, Edward, Paul, Chris, John
Specifications
| Specification | Status | Comment |
|---|---|---|
| ECMAScript 3rd Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.2. |
| ECMAScript 5.1 (ECMA-262) The definition of 'Array.prototype.shift' in that specification. |
Standard | |
| ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Array.prototype.shift' in that specification. |
Standard | |
| ECMAScript Latest Draft (ECMA-262) The definition of 'Array.prototype.shift' in that specification. |
Draft |
Browser compatibility
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
shift | Chrome Volledige ondersteuning 1 | Edge Volledige ondersteuning 12 | Firefox Volledige ondersteuning 1 | IE Volledige ondersteuning 5.5 | Opera Volledige ondersteuning Ja | Safari Volledige ondersteuning Ja | WebView Android Volledige ondersteuning Ja | Chrome Android Volledige ondersteuning 18 | Firefox Android Volledige ondersteuning 4 | Opera Android Volledige ondersteuning Ja | Safari iOS Volledige ondersteuning Ja | Samsung Internet Android Volledige ondersteuning Ja | nodejs Volledige ondersteuning Ja |
Legenda
- Volledige ondersteuning
- Volledige ondersteuning