- ベストアンサー
JavaScript returnを使った関数
function Next() { return currentNum < 4 ? currentNum + 1 : 0; }; 上記の様な関数があります。 currentNumが4より小さいときに + 1というのはわかるのですが、こういった形の関数の記述の形式がわからないので、途中の「?」と末尾の「:0;」がどのように作用しているのかわかりません。 ご存知の方、是非ご教授下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
currentNum < 4 ? currentNum + 1 : 0; という記述は三項演算子と呼ばれるモノです。 if文の省略形のようなものと思ってください。 ?の前の式(currentNum < 4)を評価し、真なら?と:の間の値(currentNum + 1)を返し、偽なら:の後ろの値(0)を返します。 if (currentNum < 4) { return currentNum + 1; } else { return 0; } と同等の処理となります。
その他の回答 (1)
- LancerVII
- ベストアンサー率51% (1060/2054)
回答No.1
こんにちは。 三項演算子と呼ばれるものです。 条件 ? 処理1 : 処理2 日本語で言うと currentNumが4未満の場合はcurrentNum+1を返す。 currentNumが4以上の場合は0を返す。 if ( currentNum < 4 ) { return currentNum + 1; } else { return 0; } と同じ動きになります。
質問者
お礼
ありがとうございます。理解しました。勉強します。前回もありがとうございました。
お礼
ありがとうございます。理解しました。勉強します。