I go over the angular form module and I saw a syntax I don't recognize [...parent.path !, name];
is it typescript syntax?
it can be found at this link which is angular github code.
I go over the angular form module and I saw a syntax I don't recognize [...parent.path !, name];
is it typescript syntax?
it can be found at this link which is angular github code.
As indicate here.
A new
!
post-fix expression operator may be used to assert that its operand is non-null and non-undefined in contexts where the type checker is unable to conclude that fact. Specifically, the operationx!
produces a value of the type ofx
withnull
andundefined
excluded. Similar to type assertions of the forms<T>x
andx
asT
, the!
non-null assertion operator is simply removed in the emitted JavaScript code.
// Compiled with --strictNullChecks
function validateEntity(e?: Entity) {
// Throw exception if e is null or invalid entity
}
function processEntity(e?: Entity) {
validateEntity(e);
let s = e!.name; // Assert that e is non-null and access name
}
It indicates non-null value.