What is the ternary operator?
JavaScriptThe short answer
The ternary operator (condition ? valueIfTrue : valueIfFalse) is a shorthand for a simple if/else that returns a value. It takes three operands: a condition, a value to return if true, and a value to return if false. It is commonly used in JSX for conditional rendering.
How it works
// if/elselet message;if (age >= 18) { message = 'Adult';} else { message = 'Minor';}// Ternary — one lineconst message = age >= 18 ? 'Adult' : 'Minor';In React/JSX
The ternary is the most common way to do conditional rendering in JSX:
function Status({ isOnline }) { return ( <span className={isOnline ? 'green' : 'gray'}> {isOnline ? 'Online' : 'Offline'} </span> );}When NOT to use it
Avoid nesting ternaries — they become hard to read:
// Bad — hard to readconst label = score > 90 ? 'A' : score > 80 ? 'B' : score > 70 ? 'C' : 'F';// Better — use if/else or a functionfunction getGrade(score) { if (score > 90) return 'A'; if (score > 80) return 'B'; if (score > 70) return 'C'; return 'F';}Use the ternary for simple, one-level conditions. For anything more complex, use if/else or extract a function.
Interview Tip
Show the basic syntax, a JSX example, and mention that nested ternaries are bad practice. This is a quick question — keep it brief.
Why interviewers ask this
This tests basic JavaScript syntax knowledge. It often comes up in the context of React, where ternaries are used constantly in JSX.