Vale, con un string "simple" o un array de "strings" ya he conseguido que me funcione:
   
Código Javascript
:
Ver original- <g:javascript> 
-         var hola = "PUTOOOOOOO"; 
-     </g:javascript> 
-     <g:javascript> 
-         var arreglo = new Array(); 
-         arreglo[0] = "qwerty"; 
-         arreglo[1] = "pedo"; 
- </g:javascript> 
Código HTML:
Ver original- <input name="a" type="button" onclick='prueba(hola)' value="play" /> 
- <input name="b" type="button" onclick='prueba(arreglo)' value="play" /> 
El problema ahora esta en pasarle un array de objetos, o sea lo que hemos hablado al principio:   
Código Javascript
:
Ver original- <g:javascript> 
-         var tempArr = new Array(); 
-         <g:each in="${list}" status="x" var="item" > 
-             tempArr[${x}]= {hora:${item.getHoras()},minuto:${item.getMinutos()},segundo:${item.getSegundos()},tipo:${item.getTipo()},numero:${item.getNumero()},nombre1:${item.getNombre1()},nombre2:${item.getNombre2()},comentarios:${item.getComentarios()}}; 
-         </g:each> 
-         var asco=tempArr[0].hora; 
- </g:javascript> 
Y conseguir pasar tempArr entero o asco, que es el primer atributo de tempArr[0] (por probar vamos...) No funciona de ninguna de las dos maneras. Si veis el codigo algo raro, es que uso GSP y groovy/grails.