AnyCompiler

Conditional Statements (if, else if, else)

TypeScript mein conditionals bilkul JavaScript jaise hi hain — if, else if, aur else, curly braces se har block mark hota hai.

let age: number = 20;
if (age >= 18) {
  console.log("You are an adult");
} else {
  console.log("You are a minor");
}
Output
You are an adult

=== vs. ==, aur ek check jo JavaScript nahi kar sakta

TypeScript JavaScript ke dono equality operators rakhta hai, aur wahi advice abhi bhi apply hoti hai: hamesha == ke bajaye === ko prefer karo. Lekin TypeScript ka type checker ek aisi cheez add karta hai jo plain JavaScript mein kabhi nahi thi — do values ko compare karna jinke types kabhi equal ho hi nahi sakte, code run hone se pehle hi ek error ke roop mein flag ho jaata hai.

console.log(5 === 5);
console.log(5 === "5");
Output
script.ts(2,13): error TS2367: This condition will always return 'false' since the types 'number' and 'string' have no overlap.

Yeh genuinely woh hai jo TypeScript ka compiler report karta hai — kuch aisa nahi jo plausible dikhne ke liye likha gaya ho. Plain JavaScript mein, 5 === "5" chup chaap false evaluate ho kar chalta rahega; TypeScript pakad leta hai ki yeh almost certainly ek mistake hai aur ise compile karne se hi mana kar deta hai.

Aage: for loops — collection ke har item par code ko repeat karna.