gracias por las correcciones. otra cosa, ahi me comentas "u[x].length!=0" esa seccion, pero entonces, hay alguna funcion que me detecte si u[x] tiene o mejor dicho es un objeto?osea supongamos que es y el indice es b entonces b el contenido se vería asi u[x][b] y luego lo mismo para esto, tiene que haber alguna forma de detectar si es un string o un objeto.
¿Cómo sería?
PD: Ademas, el for que aparece con i --->
es para hacer un espacio previo con - equivalente a la profuncidad del string a imprimir, or ejemplo si x es un elemento de u (u[x]) x tendría prfundidad 1 entonces se imprimiría con un guion antes del nombre, si fuera que estamos sobre b que es un elemento del objeto u[x], imprimiríamos b con dos guiones bajos anteponiendolos, osea asi
u[x] //imprime "-x"
u[x][b] //imprime "--b" y asi