Me pregunto qué significa adjuntar un número como parámetro al método toString()
¿Qué significa cuando hay un parámetro numérico pasado a toString?
E.g. obj.toString(10);
Busqué en Google y nunca antes había visto un parámetro.
Me pregunto qué significa adjuntar un número como parámetro al método toString()
¿Qué significa cuando hay un parámetro numérico pasado a toString?
E.g. obj.toString(10);
Busqué en Google y nunca antes había visto un parámetro.
El parámetro adicional sólo funciona para Number.prototype.toString
para especificar el radix (número entero entre 2 y 36 especificando la base a utilizar para la representación de valores numéricos):
var number = 12345;
number.toString(2) === "11000000111001"
number.toString(3) === "121221020"
// …
number.toString(36) === "9ix"
No es define como un argumento globalmente aplicable a toString
, solo tiene sentido en Number
, donde especifica la base para escribir. Puede usar, por ejemplo. n.toString(16)
para convertir a hex.
Los otros objetos incorporados no usan ningún argumento y JavaScript ignorará silenciosamente los argumentos no utilizados, por lo que pasar 16
a cualquier otro método toString
hará la diferencia. Por supuesto, puede hacer sus propios métodos toString
donde los argumentos opcionales pueden significar lo que quiera.
Esto sólo funciona en objetos Number y está destinado a darle una forma de mostrar un número con un cierto radix:
var n = 256;
var d = n.toString(10); // decimal: "256"
var o = n.toString(8); // octal: "400"
var d = n.toString(16); // hex: "100"
var b = n.toString(2); // binary: "100000000"
var w = n.toString(20); // base 20: "cg"
Tenga en cuenta que la raíz debe ser un número entero entre 2 y 36 o toString()
elevará un error.
Último comentario sobre esto, y fue a corto de una edición para hacer. Pero 'var b = n.toString (16); // binary: "100000000" 'en realidad debería ser' n.toString (2) 'ya que el binario está en la base 2, ¡supongo que fue solo una cosa de copiar y pegar! – Rchristiani
@Rchristiani Absolutamente. Una edición habría estado perfectamente en orden, pero ahora la he cambiado yo mismo. ¡Gracias por la pista! – Tomalak
MDN da una muy buena explicación sobre el tema: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Number/toString – luissquall