Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

104
Visualizações
Convertir objetos en primitivas

¿Por qué, cuando usamos Symbol.toPrimitive, tenemos que devolver una primitiva del mismo tipo que la sugerencia? Por ejemplo, al usar valueOf() y toString(), podemos devolver, por ejemplo, una cadena para la sugerencia de "número", o por ejemplo, un número para la sugerencia de "cadena". Pero en Symbol.toPrimitive esto no funciona, como si tras la devolución hubiera otro encasillado.

 let user = { name: 'John', money: 1000, [Symbol.toPrimitive](hint) { return hint == 'string' ? 123 : `this.money`; }, }; alert(user); // 123 alert(+user); // NaN

Aquí obtenemos 123 para pista de cadena y NaN para pista de número.

Si lo hacemos así:

 let user = { name: 'John', money: 1000, toString() { return 123; }, valueOf() { return '123'; }, }; alert(user); // 123 alert(+user); // '123'

Como resultado, obtendremos 123 como pista de cadena y '123' como pista numérica.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda