Hola a todos.
Furoya, te envío otra forma de crear el método "move" , para que lo compares y poder ver los posibles errores que se me puedan haber escapado.
Código PHP:
<html>
<head>
<title>Metódo array move_to</title>
<script language=JavaScript type=text/javascript>
<!--
Array.prototype.move_to = function(a,b){
// a - elemento a mover
// b - es la posición
a = a >= this.length ? this.length - 1 : a < 0 ? 0: a
b = b >= this.length ? this.length - 1 : b < 0 ? 0: b
var element_move = this[a]
if(a < b){
for(var ctr = a; ctr < b; ctr++){
this[ctr] = this[ctr+1]
}
}
if(a > b){
for(var ctr = a; ctr > b; ctr--){
this[ctr] = this[ctr-1]
}
}
this[b] = element_move
}
//-->
</script>
</head>
<body>
<script language=JavaScript type=text/javascript>
<!--
var n = 2
var my_array = new Array("cero","primero","segundo","tercero","cuarto","quinto","sexto","septimo","octavo")
// El primer argumento el elemento a mover y el segundo la posición
// donde queremos situarlo
my_array.move_to(8,n)
var msg = ""
for (var ctr=0; ctr < my_array.length; ctr++){
if(ctr == n){
msg+=my_array[ctr].bold()+" "
}
else{
msg+=my_array[ctr]+" "
}
}
document.write(msg)
//-->
</script>
</body>
</html>
Saludos