¿Verificando la verdadera explicidad es malo por diseño?

¿Se considera malo verificar explícitamente el verdadero booleano? ¿Sería mejor hacer un simpleif(success) ?

He visto varios chistes sobre cómoif (someBoolean === true) Es un código horrible en un lenguaje fuertemente tipado pero ¿también se considera malo en los idiomas débilmente tipados?

Esto se aplicaría a cualquier lenguaje débilmente escrito que escriba coerción en una declaración if.

Un ejemplo específico sería:

var onSuccess = function (JSONfromServer) {
    // explicitly check for the boolean value `true`
    if (JSONfromServer === true) {
         // do some things
    }
}

// pass it to an ajax as a callback
doSomeAjax(onSuccess);

[Editar]

En este caso particular, la variable de éxito es cualquier JSON válido devuelto por un servidor. Entonces podría ser cualquier cosa. si es el verdadero booleano, entonces ocurrió un éxito. Si se trata de un objeto de manejo de errores, se manejará. Si se trata de otra cosa, probablemente se manejará en silencio.

La pregunta era si el servidor volveríatrue como JSON y buscando una buena manera de manejar el caso donde la acción tuvo éxito.

Sin embargo, quería evitar ser específico de JavaScript y AJAX.

Respuestas a la pregunta(7)

Su respuesta a la pregunta