2012-01-06 13 views
11

Estoy tratando de escribir de manera eficiente una instrucción que empuja a la posición 1 de una matriz, y empuja lo que esté en esa posición, o después de que respalde un punto.¿Cómo presionar a una matriz en una posición particular?

array = [4,5,9,6,2,5] 

#push 0 to position 1 

array = [4,0,5,9,6,2,5] 

#push 123 to position 1 

array = [4,123,0,5,9,6,2,5] 

¿Cuál es la mejor manera de escribir esto? (javascript o coffeescript aceptable)

Gracias!

+0

se puede utilizar este http://stackoverflow.com/questions/586182/javascript-insert-item-into -array-at-a-specific-index – HasanCseBuet

+0

http://www.w3schools.com/jsref/jsref_splice.asp –

+2

@Anand: no alimente w3fools.com más visitas, hay mucho [mejor] (https : //developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/splice) references [available] (http://es5.github.com/#x15.4.4.12). –

Respuesta

18
array = [4,5,9,6,2,5] 

#push 0 to position 1 
array.splice(1,0,0) 

array = [4,0,5,9,6,2,5] 

#push 123 to position 1 
array.splice(1,0,123) 

array = [4,123,0,5,9,6,2,5] 
+1

** Nota: ** splice devuelve una matriz de los elementos _removed_. En estos ejemplos, no se eliminan elementos por lo que 'console.log (array.splice (1,0,123))' devolverá '[]'. Debería tener RTFM – Pakman

8

Para empujar cualquier elemento en la posición específica en el uso conjunto siguiente sintaxis

// The original array 
var array = ["one", "two", "four"]; 
// splice(position, numberOfItemsToRemove, item) 
array.splice(2, 0, "three"); 

console.log(array); // ["one", "two", "three", "four"] 
Cuestiones relacionadas