JavaScript array_unshift
Pushes elements onto the beginning of the array
1 2 3 4 56 7 8 9 1011 12 13 14 1516 17 18 19 | function array_unshift (array) { // Pushes elements onto the beginning of the array // // version: 1008.1718 // discuss at: http://phpjs.org/functions/array_unshift // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + improved by: Martijn Wieringa // + improved by: jmweb // % note 1: Currently does not handle objects // * example 1: array_unshift(['van', 'Zonneveld'], 'Kevin'); // * returns 1: 3 var i = arguments.length; while(--i !== 0){ arguments[0].unshift(arguments[i]); } return arguments[0].length; } |
Examples
Running
1 | array_unshift(['van', 'Zonneveld'], 'Kevin'); |
Should return
1 | 3 |
Dependencies
No dependencies, you can use this function standalone.
Open syntax issues
php.js uses JsLint to help us keep our code consistent and prevent some common bugs.
Eventually we want all code to pass or at least take into consideration most fixes suggested by JsLint, following this JsLint configuration we’ve decided on.
Authors
Thanks to the following developers, you get to have array_unshift goodness in JavaScript.
Note that the array_unshift() implementation given here prepends the array arguments in the wrong order.
As an example:
var names=['van', 'Zonneveld']; array_unshift(names,'Kevin','Tim') // returns 4 //names is now ['Tim','Kevin','van', 'Zonneveld']
The function should be altered to:
function array_unshift(/* assumes at least 1 argument passed - the array */){
var i=arguments.length;
while(--i!==0){
arguments[0].unshift(arguments[i]);
}
return arguments[0].length;
}
As an example:
var names=['van', 'Zonneveld']; array_unshift(names,'Kevin','Tim') // returns 4 //names is now ['Kevin','Tim','van', 'Zonneveld']


Kevin van Zonneveld
Jun 19th