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