Object: pasar a cadena
Normalmente un objeto se va a manejar sin necesidad de conversines, pero a veces es necesario acceder a su interior, a sus detalles. Para esto tenemos dos métodos
- object.toString(), object.toLocaleString() los que permiten ver los objetos como cadenas imprimibles. El resultado del segundo tiene en cuenta configuraciones regionales cuando es necesario, por ejemplo en el caso de las fechas.
- value.of(), que permite obtener el valor del objeto
El resultado de estos métodos va a depender del objeto de que se trate, pues suelen ser sobreescritos por los diferentes objetos.
Los métodos de conversión a string puede y debe ser sobreescrito para objetos diferentes de los predefinidos en Javascript. Por defecto para las instancias de objeto devolverá [object Object] y para los objetos o clases devuelve su código
- Array
- Una cadena formada por los elementos separados por coma
- Date
- La fecha completa, con hora y zona horaria (toLocaleString: solo fecha y hora)
- Boolean
- Si el valor es false devuelve "false" si no devuelve "true"
- Function
- la cadena "function nombre_de_función(argumentos){ [código]}"
- Number
- Representación textual del número
- String
- El valor de la cadena
- Default
- "[object nombre_del_objeto]"
El método object.valueof() no es demasiado útil, lo normal es usar los objetos como tales, accediendo a sus propiedades y métodos con la notación objeto.propiedad u objeto.metodo(), sin necesitad de acudir a su codficiación interna. Este método también suele ser sobreescrito por los objetos derivados de Object.
- Array
- Los valores del array separados por coma entre corchetes, o sea, el propio array
- Boolean
- El valor booleano (true o false)
- Date
- La fecha como el número de milisegundos desde el 1/1/1970, 00:00
- Function
- La propia función
- Number
- El valor numérico
- String
- La cadena
- Default
- El propio objeto, como se definió