parent
1df4e4b836
commit
9edcb35acb
5 changed files with 88 additions and 5 deletions
@ -1 +1,17 @@ |
||||
# As const |
||||
# As Const |
||||
|
||||
`as const` is a type assertion in TypeScript that allows you to assert that an expression has a specific type, and that its value should be treated as a read-only value. |
||||
|
||||
For example: |
||||
|
||||
``` |
||||
const colors = ['red', 'green', 'blue'] as const; |
||||
|
||||
// colors is now of type readonly ['red', 'green', 'blue'] |
||||
``` |
||||
|
||||
Using as const allows TypeScript to infer more accurate types for constants, which can lead to improved type checking and better type inference in your code. |
||||
|
||||
Learn more from the following links: |
||||
|
||||
- [const assertions](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-4.html#const-assertions) |
@ -1 +1,14 @@ |
||||
# As type |
||||
# As Type |
||||
|
||||
as is a type assertion in TypeScript that allows you to tell the compiler to treat a value as a specific type, regardless of its inferred type. |
||||
|
||||
For example: |
||||
|
||||
``` |
||||
let num = 42; |
||||
let str = num as string; |
||||
|
||||
// str is now of type string, even though num is a number |
||||
``` |
||||
|
||||
It's important to note that type assertions do not change the runtime type of a value, and do not cause any type of conversion. They simply provide a way for the programmer to override the type inference performed by the compiler. |
@ -1 +1,13 @@ |
||||
# As any |
||||
# As Any |
||||
|
||||
`any` is a special type in TypeScript that represents a value of any type. When a value is declared with the any type, the compiler will not perform any type checks or type inference on that value. |
||||
|
||||
For example: |
||||
|
||||
``` |
||||
let anyValue: any = 42; |
||||
|
||||
// we can assign any value to anyValue, regardless of its type |
||||
anyValue = 'Hello, world!'; |
||||
anyValue = true; |
||||
``` |
@ -1 +1,18 @@ |
||||
# Non null assertion |
||||
# Non Null Assertion |
||||
|
||||
The non-null assertion operator (!) is a type assertion in TypeScript that allows you to tell the compiler that a value will never be null or undefined. |
||||
|
||||
For example: |
||||
|
||||
``` |
||||
let name: string | null = null; |
||||
|
||||
// we use the non-null assertion operator to tell the compiler that name will never be null |
||||
let nameLength = name!.length; |
||||
``` |
||||
|
||||
The non-null assertion operator is used to assert that a value is not null or undefined, and to tell the compiler to treat the value as non-nullable. However, it's important to be careful when using the non-null assertion operator, as it can lead to runtime errors if the value is actually `null` or `undefined`. |
||||
|
||||
Learn more from the following links: |
||||
|
||||
- [Non-null assertion operator](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-0.html#non-null-assertion-operator) |
@ -1 +1,26 @@ |
||||
# Type assertions |
||||
# Type Assertions |
||||
|
||||
Type assertions in TypeScript are a way to tell the compiler to treat a value as a specific type, regardless of its inferred type. |
||||
|
||||
There are two syntaxes for type assertions in TypeScript: |
||||
|
||||
1. The "angle-bracket" syntax: <T>value |
||||
2. The "as" syntax: value as T |
||||
|
||||
For example: |
||||
|
||||
``` |
||||
let num = 42; |
||||
|
||||
// using angle-bracket syntax |
||||
let str = <string>num; |
||||
|
||||
// using as syntax |
||||
let str2 = num as string; |
||||
``` |
||||
|
||||
In both examples, `num` is a number, but the type assertions tell the compiler to treat the value as a string. |
||||
|
||||
Learn more from the following links: |
||||
|
||||
- [Type Assertions](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#type-assertions) |
Loading…
Reference in new issue