Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

168
Views
¿`==` todavía se llama el "operador de igualdad abstracta"?

== solía llamarse el operador de igualdad abstracta, y su algoritmo de comparación de igualdad abstracta se definió en la especificación ECMAScript.

Este algoritmo ahora se llama IsLooselyEqual en la especificación, y el término "igualdad abstracta" ya no se usa en la especificación.

¿Se ha cambiado el nombre del operador?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puede llamar == al operador de igualdad abstracta porque verifica de acuerdo con el algoritmo de comparación de igualdad abstracta. Entonces, este es un nombre válido, aunque no oficial, para él.

El nombre más popular para esto es "igualdad suelta". También un nombre no oficial. Se opone a la "igualdad estricta" con === .


El operador simplemente se denomina "el operador de igualdad" en ECMAScript 5 .

En ECMAScript 6, la especificación tiene una sección paraguas 12.10 Operadores de igualdad que agrupa == , != , === y !== . Sin embargo, partes de la especificación todavía mencionan "el operador de igualdad" como 12.10.3 Semántica de tiempo de ejecución: Evaluación , que dice lo siguiente al final de la sección:

NOTA 2 Los operadores de igualdad mantienen los siguientes invariantes:

  • A != B es equivalente a !(A == B) .
  • A == B es equivalente a B == A , excepto en el orden de evaluación de A y B .

NOTA 3 El operador de igualdad no siempre es transitivo. Por ejemplo, puede haber dos objetos String distintos, cada uno de los cuales representa el mismo valor String; cada objeto String sería considerado igual al valor String por el operador == , pero los dos objetos String no serían iguales entre sí. Por ejemplo:

  • new String("a") == "a" y "a" == new String("a") son true .
  • new String("a") == new String("a") es false .

Este sigue siendo el caso en la última especificación oficial ECMAScript 12 (2021). La sección relevante es13.11 Operadores de igualdad que aún contiene == , != , === y !== . El final de 13.11.1 Runtime Semantics: Evaluation todavía contiene las mismas notas que ECMAScript 6.


Por lo tanto, el operador es "el operador de igualdad*. La operación que realiza se llama Comparación de igualdad abstracta en ECMAScript 12 (con una "Comparación de igualdad estricta" análoga para === ) y recientemente se le cambió el nombre a IsLooselyEqual (con un "IsStrictlyEqual" análogo ") en el último borrador (2022).

about 4 years ago · Juan Pablo Isaza Report

0

En ECMAScript 5, el operador == se denominaba " operador de igualdad ", y === se denominaba " operador de igualdad estricta ".

En ES2022, el término " operadores de igualdad " se utiliza para abarcar ambos (y no se produce el emparejamiento de palabras "operador de igualdad").

El término "operador de igualdad suelta" no aparece en ES2022, aunque el algoritmo utilizado para definir su comportamiento se llama IsLooselyEqual .

El término "operador de igualdad estricta" no aparece en ES2022, aunque el algoritmo utilizado para definir su comportamiento se llama IsStrictlyEqual .

Sobre esta base, diría que == nunca* se llamó oficialmente el "operador de igualdad abstracto". Era el "operador igual". Sin embargo, dado que este término ya no se usa en la especificación, tal vez su nombre haya cambiado a "operador de igualdad" o posiblemente a "operador de igualdad flexible" (siendo el contrario "operador de igualdad estricta").

*necesita verificar antes de ES5

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!