Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

Conditional (ternary) operator

BaselineWidely available

Theconditional (ternary) operator is the only JavaScript operator that takes three operands:a condition followed by a question mark (?), then an expression to execute if the condition istruthy followed by a colon (:), and finally the expression to execute if the condition isfalsy.This operator is frequently used as an alternative to anif...else statement.

Try it

function getFee(isMember) {  return isMember ? "$2.00" : "$10.00";}console.log(getFee(true));// Expected output: "$2.00"console.log(getFee(false));// Expected output: "$10.00"console.log(getFee(null));// Expected output: "$10.00"

Syntax

js
condition ? exprIfTrue : exprIfFalse

Parameters

condition

An expression whose value is used as a condition.

exprIfTrue

An expression which is executed if thecondition evaluates to atruthy value (one which equals or can be converted totrue).

exprIfFalse

An expression which is executed if thecondition isfalsy (that is, has a value which can be converted tofalse).

Description

Besidesfalse, possible falsy expressions are:null,NaN,0, the empty string (""), andundefined.Ifcondition is any of these, the result of the conditional expression will be the result of executing the expressionexprIfFalse.

Examples

A basic example

js
const age = 26;const beverage = age >= 21 ? "Beer" : "Juice";console.log(beverage); // "Beer"

Handling null values

One common usage is to handle a value that may benull:

js
const greeting = (person) => {  const name = person ? person.name : "stranger";  return `Howdy, ${name}`;};console.log(greeting({ name: "Alice" })); // "Howdy, Alice"console.log(greeting(null)); // "Howdy, stranger"

Conditional chains

The ternary operator is right-associative, which means it can be "chained" in the following way, similar to anif … else if … else if … else chain:

js
function example() {  return condition1 ? value1    : condition2 ? value2    : condition3 ? value3    : value4;}

This is equivalent to the followingif...else chain.

js
function example() {  if (condition1) {    return value1;  } else if (condition2) {    return value2;  } else if (condition3) {    return value3;  } else {    return value4;  }}

Specifications

Specification
ECMAScript® 2026 Language Specification
# sec-conditional-operator

Browser compatibility

See also

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp