En Express.js, ¿por qué el código después de res.json () todavía se ejecuta?

En Node with Express, tengo un código como este.

 if (req.body.var1 >= req.body.var2){
        res.json({success: false, message: "End time must be AFTER start time"});
        console.log('Hi')
 }
 console.log('Hi2')
 //other codes

Esperaba que si var1 es> = var2, la respuesta se enviaría y la ejecución terminaría. Como declaraciones de retorno en Java / C #

Pero aparentemente ese no es el caso. Después de enviar la respuesta, tanto 'Hola' como 'Hi2' y todos los demás códigos después de eso continúan ejecutándose.

Me preguntaba cómo iba a evitar que esto suceda.

Además, me preguntaba en qué circunstancias desearía que el código se siguiera ejecutando después de que ya se haya enviado una respuesta.

Salud

Respuestas a la pregunta(3)

Su respuesta a la pregunta