Bird
Raised Fist0
Javascriptprogramming~20 mins

If–else statement in Javascript - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
If–else Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of nested if–else
What is the output of the following JavaScript code?
Javascript
let x = 10;
if (x > 5) {
  if (x < 15) {
    console.log('A');
  } else {
    console.log('B');
  }
} else {
  console.log('C');
}
AB
BC
CA
Dundefined
Attempts:
2 left
💡 Hint
Check the conditions step by step.
❓ Predict Output
intermediate
2:00remaining
If–else with logical operators
What will this code print to the console?
Javascript
let a = 3;
let b = 7;
if (a > 5 && b < 10) {
  console.log('X');
} else {
  console.log('Y');
}
AX
BY
Cundefined
DSyntaxError
Attempts:
2 left
💡 Hint
Remember how && works: both conditions must be true.
❓ Predict Output
advanced
2:00remaining
If–else with else if branches
What is the output of this code snippet?
Javascript
let score = 75;
if (score >= 90) {
  console.log('A');
} else if (score >= 80) {
  console.log('B');
} else if (score >= 70) {
  console.log('C');
} else {
  console.log('F');
}
AC
BA
CB
DF
Attempts:
2 left
💡 Hint
Check each condition in order.
❓ Predict Output
advanced
2:00remaining
If–else with variable reassignment
What is the value of variable result after running this code?
Javascript
let num = 0;
let result;
if (num) {
  result = 'Truthy';
} else {
  result = 'Falsy';
}
A'Falsy'
Bundefined
C'Truthy'
DReferenceError
Attempts:
2 left
💡 Hint
Remember how JavaScript treats 0 in conditions.
❓ Predict Output
expert
2:00remaining
If–else with complex condition and side effects
What will be printed by this code?
Javascript
let x = 5;
if ((x += 3) > 7) {
  console.log(x);
} else {
  console.log(x - 1);
}
A6
B7
C5
D8
Attempts:
2 left
💡 Hint
The condition changes x before comparing.

Practice

(1/5)
1. What does an if-else statement do in JavaScript?
easy
A. It repeats a block of code multiple times.
B. It creates a new variable.
C. It defines a function to be used later.
D. It chooses between two actions based on a condition.

Solution

  1. Step 1: Understand the purpose of if-else

    An if-else statement lets the program decide between two paths depending on a condition.
  2. Step 2: Match the description to the options

    Only It chooses between two actions based on a condition. describes choosing between two actions based on a condition.
  3. Final Answer:

    It chooses between two actions based on a condition. -> Option D
  4. Quick Check:

    If-else = choose between two actions [OK]
Hint: If-else picks one of two paths based on true or false [OK]
Common Mistakes:
  • Confusing if-else with loops
  • Thinking if-else defines functions
  • Believing if-else creates variables
2. Which of the following is the correct syntax for an if-else statement in JavaScript?
easy
A. if (condition) { } else { }
B. if condition { } else { }
C. if (condition) then { } else { }
D. if condition then { } else { }

Solution

  1. Step 1: Recall JavaScript if-else syntax

    JavaScript requires parentheses around the condition and braces for blocks: if (condition) { } else { }
  2. Step 2: Compare options to correct syntax

    Only if (condition) { } else { } uses parentheses and braces correctly without extra keywords.
  3. Final Answer:

    if (condition) { } else { } -> Option A
  4. Quick Check:

    Correct syntax uses parentheses and braces [OK]
Hint: Remember: condition in ( ), blocks in { } [OK]
Common Mistakes:
  • Omitting parentheses around condition
  • Adding 'then' keyword (not in JS)
  • Missing braces for code blocks
3. What will be the output of this code?
let age = 18;
if (age >= 18) {
  console.log('Adult');
} else {
  console.log('Minor');
}
medium
A. Adult
B. Minor
C. undefined
D. Error

Solution

  1. Step 1: Evaluate the condition age >= 18

    Since age is 18, the condition age >= 18 is true.
  2. Step 2: Determine which block runs

    The if block runs and prints 'Adult'. The else block is skipped.
  3. Final Answer:

    Adult -> Option A
  4. Quick Check:

    Condition true -> if block runs -> 'Adult' [OK]
Hint: Check if condition is true or false to pick output [OK]
Common Mistakes:
  • Thinking 18 is less than 18
  • Confusing else block runs when condition is true
  • Expecting syntax error
4. Find the error in this code:
let score = 75;
if score >= 60 {
  console.log('Pass');
} else {
  console.log('Fail');
}
medium
A. Using else without if
B. Missing semicolon after console.log
C. Missing parentheses around the condition
D. Variable score is not declared

Solution

  1. Step 1: Check if-else syntax

    JavaScript requires parentheses around the condition in if statements.
  2. Step 2: Identify the missing parentheses

    The code has if score >= 60 { ... } but it should be if (score >= 60) { ... }
  3. Final Answer:

    Missing parentheses around the condition -> Option C
  4. Quick Check:

    if condition must be in ( ) [OK]
Hint: Always put condition inside ( ) after if [OK]
Common Mistakes:
  • Forgetting parentheses around condition
  • Thinking semicolon is required after console.log block
  • Confusing else usage
5. You want to print 'Even' if a number is even, and 'Odd' if it is odd. Which code correctly uses if-else to do this?
let num = 7;
// Choose the correct code snippet
hard
A. if (num % 2 != 0) { console.log('Even'); } else { console.log('Odd'); }
B. if (num % 2 === 0) { console.log('Even'); } else { console.log('Odd'); }
C. if (num % 2) { console.log('Even'); } else { console.log('Odd'); }
D. if (num / 2 === 0) { console.log('Even'); } else { console.log('Odd'); }

Solution

  1. Step 1: Understand how to check even numbers

    A number is even if remainder when divided by 2 is zero: num % 2 === 0.
  2. Step 2: Check each option's condition

    if (num % 2 === 0) { console.log('Even'); } else { console.log('Odd'); } correctly checks num % 2 === 0. Others either use wrong operator or logic.
  3. Final Answer:

    if (num % 2 === 0) { console.log('Even'); } else { console.log('Odd'); } -> Option B
  4. Quick Check:

    Even check uses num % 2 === 0 [OK]
Hint: Use modulo (%) to test evenness: zero remainder means even [OK]
Common Mistakes:
  • Using division (/) instead of modulo (%)
  • Checking if remainder is truthy instead of zero
  • Reversing even and odd conditions
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard