He heredado un proyecto web en PHP y por supuesto JS. ¿Qué propósito serviría este código a continuación en JavaScript? Parece que el 'si' siempre sería cierto y el otro nunca se ejecutará. El desarrollador que escribió esto ya no es accesible para que se le pregunte qué pretendía con esto.
var thisValue = new Date($(this).val()); if (thisValue.getTime() === thisValue.getTime()){ //some code }else{ //some code }getTime() siempre debe ser igual a sí mismo si la new Date(unknown) es una fecha real.
Esto parece un truco para el escenario donde val en new Date(val) no es una fecha, en este escenario getTime() debería devolver NaN que no es igual a sí mismo ya que no existe.
Salida compilada:
if (thisValue.getTime() (number or NaN) === (number or NaN)) { } else (NaN is not equal to NaN) { }En lugar de hacer un truco de aspecto extraño, esto es más limpio y más legible:
if (!Number.isNaN(thisValue.getTime()) {} else {}