“The complete beginner guide to OR (||) in TypeScript explains how the OR operator returns the first truthy value or checks if at least one condition is true.”
Many developers search for “or in TypeScript” when they first encounter conditional logic or type combinations in the language. The confusion usually comes from not knowing how “OR” works in TypeScript compared to JavaScript and other programming languages.
Some expect a simple “or” keyword, while others see symbols like || or | and get lost. This leads to mistakes in conditions, types, and function logic.
TypeScript is a strongly typed superset of JavaScript, and it handles “OR” in more than one way depending on the context. You may use logical OR for runtime conditions or union types for defining flexible data structures. Because of this dual behavior, beginners often mix them up.
This guide solves that confusion in a simple way. You will learn what “OR in TypeScript” really means, how it works in code, why different symbols are used, and when to apply each form correctly. Everything is broken down into clear examples so you can use it confidently in real projects.
OR in TypeScript : Quick Answer
In TypeScript, “OR” is used in two main ways:
- Logical OR (||) → Used in conditions
- Union type (|) → Used in type definitions
Example:
// Logical OR
if (user === “admin” || user === “editor”) {
console.log(“Access granted”);
}
// Union type
let id: string | number;
id = 101;
id = “A101”;
So, TypeScript does not have a keyword called “or”. Instead, it uses symbols depending on logic or types.
The Origin of OR in TypeScript
The concept of “OR” comes from Boolean algebra in mathematics. It means “either this or that is true.”
Programming languages adopted this idea early:
- Early languages used words like OR
- Modern languages use symbols like ||
- Type systems (like TypeScript) use | for unions
TypeScript inherited these ideas from JavaScript and static type theory. That is why OR exists in different forms depending on context.
British English vs American English Spelling
For “OR in TypeScript,” spelling differences are not directly relevant, but confusion still appears in related terms like “behaviour vs behavior.”
| Concept | US Spelling | UK Spelling |
| Behavior | Behavior | Behaviour |
| Union type explanation | Same | Same |
| Logical OR | ||
| Documentation style | Common in US docs | Common in UK docs |
In programming, symbols remain the same worldwide.
Which Spelling Should You Use?
- US developers: Use American English (behavior, optimize)
- UK/Commonwealth developers: Prefer British English (behaviour, optimise)
- Global codebases: Follow project style guide
For TypeScript code, spelling does NOT affect execution. Only comments and documentation style change.
Common Mistakes with OR in TypeScript

1. Using | instead of || in conditions
if (a | b) {} // Wrong
Correct:
if (a || b) {}
2. Using || for types
let value: string || number; // Wrong
Correct:
let value: string | number;
3. Confusing truthy checks
const name = user.name || “Guest”;
This replaces valid empty values incorrectly sometimes.
OR in TypeScript : Everyday Examples

Emails
If the user is admin OR editor, grant access.
News systems
type Role = “admin” | “reporter”;
Social media apps
if (isLoggedIn || hasGuestAccess) {
showFeed();
}
Formal code documentation
Union types improve flexibility in APIs.
OR in TypeScript : Google Trends & Usage Data
Search interest shows developers often confuse logical OR and union types. Interest is higher in regions with growing developer communities.
Usage comparison
| Form | Use Case | Frequency |
| ` | ` | |
| ` | ` | Type unions |
| OR keyword | Not used | Rare |
Most confusion comes from beginners learning TypeScript after JavaScript.
FAQs
1. Does TypeScript have an OR keyword?
No. It uses || for logic and | for types.
2. What is || in TypeScript?
It is the logical OR operator used in conditions.
3. What is | in TypeScript?
It is the union operator for combining types.
4. Can I use OR in type declarations?
No keyword exists. Use | instead.
5. Why are there two OR symbols?
Because one is for runtime logic and one is for type safety.
6. Is || same as |?
No. They work in completely different contexts.
7. Is OR used in JavaScript the same way?
Yes, TypeScript inherits OR behavior from JavaScript.
Conclusion
Understanding “OR in TypeScript” becomes easy once you separate logic from types. The || operator is used for runtime conditions, while the | symbol defines flexible data types. Many beginners confuse these two, but they solve different problems in programming.
TypeScript improves JavaScript by adding strong typing, and union types are one of its most powerful features. At the same time, logical OR helps control program flow in everyday conditions like login checks, permissions, and feature toggles.
Once you clearly understand when to use each form, your code becomes cleaner, safer, and easier to maintain. Instead of guessing, you will know exactly which OR to apply based on context. This small clarity can significantly improve your TypeScript skills and reduce common bugs in real-world applications.
Read more about!
Benzocaine or Lidocaine: Uses, Safety, and Tips
Chrome or Firefox: Pros, Cons, and Comparison










