В объявлениях Javascript, что означает "?" вместе с ":" значит?

В программе Javascript для преобразования юлианского дня в календарный день виден следующий код:

 month = (G<13.5) ? (G-1) : (G-13)
  year = (month<2.5) ? (C-4715) : (C-4716)

Я думал, что это могут быть какие-то условия, которые изменили значения month или же year в соответствии со значениями переменных в их объявлениях Мое исследование ничего не вернуло по этим символам - особенно по "?"- отображаемому в коде Javascript.

Для полного просмотра источника посетите astronomy.villanova.edu/links/jd.htm

Любая помощь будет принята с благодарностью!

2 ответа

Решение

Это называется троичными или условными операторами в JavaScript

Это короткая рука для чего-то вроде:

if(a ==0){
   b = 1;
}
else{
   b = 0;
}

Переменная = если условие истинно? дать этот ответ: в противном случае дать этот;

поэтому int x = 5; int y = x==5? 10:12; будет означать, что если х равен 5, у будет 10, в противном случае это будет 12

Другие вопросы по тегам