Основные правила
Строковые константы задаются в одинарных кавычках. Для использования одинарных кавычек внутри строковой константы, знак одинарной кавычки удваивается.
'Раздел', 'Тема: ''Для согласования'''
Для обозначения того, что значение атрибута не определено, используется специальное значение null.
registration == null ? false : true
Обращение к атрибуту объекта происходит по названию соответствующего Свойства схемы объекта (например, registration). Для обращения к атрибутам комплексных свойств указывается иерархический путь к атрибуту (например, registration.number.prefix).
'№' + registration.number.prefix + registration.number.number + registration.number.suffix
Однако, если РКК не зарегистрирована, то значение атрибута registration.number будет неопределенно, и такое выражение может привести к ошибке. Чтобы этого избежать, можно использовать условный оператор, который вернет пустую строку, если номер не определен:
registration ==null ? '': registration.number==null ? '' : '№' + registration.number.prefix + registration.number.number + registration.number.suffix
Другой способ избежать ошибок, если значения атрибутов не определены – использование «безопасной адресации». Тогда если неопределенно значение объекта, к атрибуту которого нужно обратиться, вместо ошибки будет возвращено значение Null. Для «безопасной адресации» перед точкой добавляется знак вопроса:
'№' + registration?.number?.prefix + registration?.number?.number + registration?.number?.suffix
Операции сравнения
Операция | Равно | Не равно | Меньше | Меньше или равно | Больше | Больше или равно |
---|---|---|---|---|---|---|
Знак | == | != | < | <= | > | >= |
Буквенное выражение | eq | ne | lt | le | gt | ge |
Математические операции
Операция | Сложение | Вычитание | Умножение | Деление | Остаток от деления | Степень |
---|---|---|---|---|---|---|
Знак | + | - | * | / | % | ^ |
Буквенное выражение | div | mod |
Логические операции
Операция | И | Или | Отрицание |
---|---|---|---|
Знак | && | || | ! |
Буквенное выражение | and | or |
Условный оператор
<Условие> ? <Значение, если условие выполнено> : <Значение, если условие не выполнено>