ich verwende typescript
2.0.0 mit --strictNullChecks
und die folgende Typ-Schutz:Inverse Typoskript Typ-Schutz
function isNotOk(value: any): value is null | undefined {
if (typeof value === 'number') {
return !isFinite(value);
} else {
return value === null || value === undefined;
}
}
Welche null
in Abrede stellen, undefined
, NaN
und Infinite
. Ich möchte eine Umkehrung davon:
export function isOk(value: any): value is not null | undefined {
return !isNotOk(value);
}
Natürlich funktioniert diese Syntax nicht. Gibt es einen bekannten Weg, dies zu erreichen?
haben Sie strenge Null-Überprüfung eingeschaltet? –
Ja, 'strictNullChecks' ist aktiviert. Ich werde die Frage aktualisieren, um zu klären. –
Warum wird {return (typeof value === 'number') nicht zurückgegeben? isFinite (Wert): (Wert! == null && Wert! == undefiniert);} Arbeit? Gibt es ein Problem mit den Null-Checks? –