Avoid extra non-null assertions This product is not supported for your selected
Datadog site . (
).
Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel,
n'hésitez pas à nous contacter .
TRY THIS RULE ID: typescript-best-practices/no-extra-non-null-assertion
Language: TypeScript
Severity: Error
Category: Error Prone
Description The non null
or undefined
assertion operation should not be used twice in a single expression.
Non-Compliant Code Examples const bar = foo !! . bar ;
function foo ( bar : number | undefined ) { const bar : number = bar !! ; }
function foo ( bar ?: { n : number }) { return bar !? . n ; }
function foo ( bar ?: { n : number }) { return bar !? .(); }
// parentheses
const foo : { bar : number } | null = null ; const bar = ( foo ! ) ! . bar ;
function foo ( bar ?: { n : number }) { return ( bar ! ) ? . n ; }
function foo ( bar ?: { n : number }) { return ( bar ) !? . n ; }
function foo ( bar ?: { n : number }) { return ( bar ! ) ? .(); }
Compliant Code Examples const bar = foo ! . bar ;
function foo ( bar : number | undefined ) {
const bar : number = bar ! ;
}
function foo ( bar ?: { n : number }) {
return bar ? . n ;
}
// https://github.com/typescript-eslint/typescript-eslint/issues/2166
checksCounter ? . textContent ! . trim ();
// https://github.com/typescript-eslint/typescript-eslint/issues/2732
function foo ( key : string | null ) {
const obj = {};
return obj ? .[ key ! ];
}
Seamless integrations. Try Datadog Code Security