I estaba experimentando con el método de corte y empalme() en jconsolecomportamiento divertido de Array.splice()
a = [1,2,3,4,5,6,7,8,9,10]
1,2,3,4,5,6,7,8,9,10
Aquí, a es una matriz sencilla de 1 a 10.
b = ['a','b','c']
a,b,c
Y esto es b
a.splice(0, 2, b)
1,2
a
a,b,c,3,4,5,6,7,8,9,10
Cuando paso la matriz B para el tercer argumento de empalme, quiero decir "quitar los dos primeros argumentos de a del índice cero, y reemplázalos con la matriz b ". Nunca he visto pasar una matriz como tercer argumento de empalme() (todos los guide pages I read hablan sobre una lista de argumentos), pero, bueno, parece ser el truco. [1,2] se eliminan y ahora a es [a, b, c, 3,4,5,6,7,8,9,10]. Entonces construyo otra matriz, que llamo c:
c = ['one','two','three']
one,two,three
y tratar de hacer lo mismo:
a.splice(0, 2, c)
a,b,c,3
a
one,two,three,4,5,6,7,8,9,10
Esta vez, 4 (en lugar de 2) elementos se eliminan [a, b, c , 3] y la matriz c se agrega al comienzo. Alguien sabe por qué? Estoy seguro de que la solución es trivial, pero no lo entiendo ahora mismo.
Genial. Las respuestas "planas" de jconsole (donde todo parecía ser una única matriz, no la matriz b como el primer miembro de la primera, a) me engañaron. Todo está claro ahora. – janesconference