Может ли кто-нибудь сказать мне, почему я не могу использовать оператор Ternary в математической функции?CFML Тернарный оператор в математической функции
Вот пример:
<cfset test = 1>
<cfdump var="#structKeyExists(Variables, 'test') ? 1 : 0 + 20#">
Я бы ожидать, что результатом этого будет 21
, однако результат на самом деле выходит как 1
.
Я обнаружил это на CF10, и когда я протестировал его на Railo, он вышел так же, так что мне интересно: это ошибка или есть причина Я не должен использовать Тернарный оператор в этом контексте?
Попробуйте '' –
Beginner
Yup, это работает ... можете ли вы мне объяснить почему? –
Bcoz '0 + 20' будет интерпретироваться как одно утверждение и часть условия else. – Beginner