| Type | Example |
|---|---|
| string | "Hello" |
| number | 100 |
| boolean | true / false |
| array | number[] |
| object | {name:string} |
| any | let x:any |
| unknown | let y:unknown |
| null | null |
| undefined | undefined |
Common Basic Explicit Types in TypeScript
Explicit types mean we manually define the datatype while creating variables.
1. string
Used to store text values.
Example
let companyName: string = "Cybotrix";
let city: string = 'Bangalore';
Valid Values
"Hello"
'World'
`Template String`
Invalid
let age: string = 25; // ❌ Error
Common String Methods
companyName.length
companyName.toUpperCase()
companyName.toLowerCase()
2. number
Used for numeric values.
Example
let salary: number = 50000;
let percentage: number = 99.5;
Supports
- Integer
- Decimal
- Negative numbers
let x: number = -10;
let y: number = 10.55;
Invalid
let amount: number = "500"; // ❌ Error
Mathematical Operations
let total: number = 10 + 20;
3. boolean
Stores only:
truefalse
Example
let isLoggedIn: boolean = true;
let isAdmin: boolean = false;
Mostly Used For
- Conditions
- Authentication
- Flags
Example
if (isLoggedIn) {
console.log("Welcome");
}
Invalid
let status: boolean = "true"; // ❌ Error
4. array
Used to store multiple values.
Array of Numbers
let marks: number[] = [10, 20, 30];
Array of Strings
let cities: string[] = ["Bangalore", "Delhi"];
Mixed Array (not recommended)
let data: any[] = [10, "Raj", true];
Array Generic Syntax
let users: Array<string> = ["Raj", "Amit"];
Common Methods
marks.push(40);
marks.pop();
marks.map();
marks.filter();
5. object
Used to store key-value pairs.
Example
let employee: {name: string, age: number} = {
name: "Raj",
age: 25
};
Access Object Values
console.log(employee.name);
Invalid
let employee: {name: string} = {
name: 100 // ❌ Error
};
Optional Property
let user: {name: string, phone?: number} = {
name: "Amit"
};
? means optional.
6. any
any disables type checking.
TypeScript behaves like normal JavaScript.
Example
let data: any = "Hello";
data = 100;
data = true;
data = [];
Everything is allowed.
Why Avoid any?
Because it removes TypeScript safety.
let value: any = "Raj";
value.toFixed(); // ❌ Runtime error possible
Use Cases
- Third-party libraries
- Dynamic APIs
- Temporary development
7. unknown
Safer version of any.
You must check type before using it.
Example
let value: unknown = "Hello";
Invalid Direct Usage
value.toUpperCase(); // ❌ Error
Correct Way
if (typeof value === "string") {
console.log(value.toUpperCase());
}
Difference Between any vs unknown
| any | unknown |
|---|---|
| No type safety | Type safe |
| Can access anything | Need type checking |
| Dangerous | Safer |
8. null
Represents intentionally empty value.
Example
let userData: null = null;
Real Example
let selectedUser: string | null = null;
Means:
- either string
- or null
Common Use
- Empty database response
- No selection
- Reset values
9. undefined
Means variable declared but value not assigned.
Example
let username: undefined = undefined;
JavaScript Example
let x;
console.log(x); // undefined
Difference Between null vs undefined
| null | undefined |
|---|---|
| Intentionally empty | Value not assigned |
| Assigned manually | Automatically assigned |
| Object type historically | Separate primitive |
Combined Example
let name: string = "Raj";
let age: number = 25;
let isActive: boolean = true;
let skills: string[] = ["React", "Node"];
let employee: {name:string, city:string} = {
name: "Raj",
city: "Bangalore"
};
let data: any = 100;
let apiResponse: unknown = "Success";
let emptyValue: null = null;
let notAssigned: undefined = undefined;
Interview Summary
| Type | Purpose |
|---|---|
| string | Text |
| number | Numeric values |
| boolean | True/False |
| array | Multiple values |
| object | Key-value data |
| any | Disable type checking |
| unknown | Safe dynamic type |
| null | Intentional empty |
| undefined | Unassigned value |