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

166
Visualizações
¿Por qué '❌'[0] === '❌' pero '✔️'[0] !== '✔️'?
'❌'[0] === '❌' // true '✔️'[0] === '✔️' // false '✔️'[0] === '✔' // true

Sospecho que está relacionado con Unicode, pero me gustaría entender con precisión qué está sucediendo y cómo puedo comparar correctamente dichos caracteres. ¿Por qué '✔️' se trata de manera diferente a '❌'?

Lo encontré en este simple conteo de caracteres.

 '✔️❌✔️❌'.split('').filter(e => e === '❌').length // 2 '✔️❌✔️❌'.split('').filter(e => e === '✔️').length // 0
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Porque ✔️ toma dos caracteres: "✔️".length === 2

"✔️"[0] === "✔" y "✔️"[1] denota color, creo.

Y "❌".length === 1 para que solo tome un carácter.

Es similar a la forma en que funcionan los emojis con diferentes colores de piel.

En cuanto a cómo comparar, creo que "✔️".codePointAt(0) (no confundir con charCodeAt() ) podría ayudar. Consulte https://thekevinscott.com/emojis-in-javascript/ :

codePointAt y fromCodePoint son métodos nuevos introducidos en ES2015 que pueden manejar caracteres Unicode cuya codificación UTF-16 es mayor a 16 bits, lo que incluye emojis. Úselos en lugar de charCodeAt, que no maneja los emoji correctamente.

about 4 years ago · Juan Pablo Isaza Relatório

0

Creo que el '✔️' se compone de 2 componentes. Cuando genera '✔️'[0], obtiene '✔', y la marca de verificación negra no es igual a la marca de verificación verde.

Sin embargo, el '❌' se compone de un solo componente, por lo que cuando genera '❌'[0], obtiene lo mismo: '❌'.

about 4 years ago · Juan Pablo Isaza Relatório

0

El segundo carácter '✔️'[1] (punto de código = 65039) es un Variation Selector

Un selector de variación especifica que el carácter anterior debe mostrarse con una presentación emoji. Solo se requiere si el carácter anterior tiene como valor predeterminado la presentación de texto.

A menudo se usa en Secuencias de Emoji ZWJ, donde uno o más caracteres en la secuencia tienen una presentación de texto y emoji, pero por lo demás se muestran de forma predeterminada en texto (blanco y negro).

Ejemplos Muñeco de nieve como texto: ☃. Muñeco de nieve como Emoji: ☃️

Corazón negro como texto: ❤. Corazón Negro como Emoji: ❤️ (no tan negro)

Variation Selector-16 fue aprobado como parte de Unicode 3.2 en 2002.

https://unicode-table.com/en/FE0F/

about 4 years ago · Juan Pablo Isaza Relatório
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