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

137
Visualizações
Compara 2 elementos

A continuación se muestra una forma típica de verificar si el foco está en un elemento determinado (txtCmd),

 if(document.activeElement === txtCmd){ return }

Me preocupa que el operador === compare todo el árbol de elementos (cada atributo y cada subelemento) que sería de bajo rendimiento.

¿Simplemente comparar los ID de los elementos es mejor?

 document.activeElement.id === txtCmd.id

PD: No hay elementos diferentes con ID idénticos en la página.

Editar:

Soy de C++. Quiero algo como la comparación de punteros en C++,

 if(&a == &b) {}
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

=== no realiza comparaciones profundas, por lo que no es de bajo rendimiento.

Una alternativa es la función .isSameNode() :

 b.isSameNode(a);

Editar:

Soy de C++. Quiero algo como la comparación de punteros en C++,

 if(&a == &b) {}

Eso es esencialmente lo que == y === hacen en JavaScript cuando se prueba la igualdad de 2 objetos.

Los operadores de calidad de JavaScript comparan objetos por referencia si los operandos son ambos objetos. a == b y a === b son true solo si tanto a como b hacen referencia al mismo objeto.

about 4 years ago · Juan Pablo Isaza Relatório

0

Si compara objetos, el operador === realizará una comparación de referencia, por lo que solo devolverá verdadero si ambos operandos apuntan al mismo objeto.

No le costará más actuaciones, pero no es lo mismo que comparar valores literales de propiedades.

Para una comparación profunda "por valor" entre objetos, === no funciona. Tendría que usar una entrada recursiva por comparación de entrada, o comparar versiones en cadena de los objetos.

Ejemplo

 const o1 = {"a":1}; const o2 = {"a":1}; const o3 = o1; console.log(o1 === o2); // false console.log(o1 === o3); // true console.log(JSON.stringify(o1) === JSON.stringify(o2)) // true

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