Un colega y yo estábamos discutiendo la implementación de la declaración "si" de JavaScript y quería encontrar la implementación para poder leerla y, con suerte, ser un poco más sabios.
Sin embargo, no pude encontrarlo en ningún lado, así que mi pregunta es; ¿Dónde vas para leer el código fuente de JavaScript?
if no es una función pero es una palabra clave. No hay una implementación de JavaScript de la misma.
El compilador/transpilador entiende la declaración if al igual que entiende otros tokens de var , const y let to do {} while(); y for Todas estas son palabras clave con un significado especial conocido por el intérprete de JavaScript.
Le gustaría ver la implementación del intérprete/compilador y la implementación del tiempo de ejecución para comprender cómo maneja las diversas palabras clave de control, como if. Alternativamente, puede consultar las especificaciones del idioma.
Editar:
Vale la pena señalar que JavaScript es ECMAScript. Hay estándares ECMAScript y JavaScript los implementa. Entonces, conceptos como veracidad y falsedad (si un valor es veraz o falso) están en los estándares de ECMAScript.
En particular, puede consultar la sección 13.6.7 que habla de la semántica de la declaración if : https://262.ecma-international.org/11.0/#sec-if-statement-runtime-semantics-evaluation
A partir de ahí, uno puede encontrar lo que significa que algo sea verdadero/falso, que es ToBoolean , como se define en las especificaciones (no es una función de JavaScript):