Операции

Операции, совмещенные с присваиванием

Для увеличения или уменьшения значения переменной есть синтаксис операций, совмещенных с присваиванием.

Табл. 1. Увеличение переменной
«1С:Шина» 1С:Предприятие 8
пер Счетчик = 2

// Результат = 3.
Счетчик += 1
Счетчик = 2

// Результат = 3.
Счетчик = Счетчик + 1;

Табл. 2. Уменьшение переменной
«1С:Шина» 1С:Предприятие 8
пер Счетчик = 5

// Результат = 3.
Счетчик -= 2
Счетчик = 5

// Результат = 3.
Счетчик = Счетчик - 2;

Табл. 3. Умножение переменной
«1С:Шина» 1С:Предприятие 8
пер Счетчик = 5

// Результат = 25.
Счетчик *= 5
Счетчик = 5

// Результат = 25.
Счетчик = Счетчик * 5;

Табл. 4. Деление переменной
«1С:Шина» 1С:Предприятие 8
пер Счетчик = 20

// Результат = 5.
Счетчик /= 4
Счетчик = 20

// Результат = 5.
Счетчик = Счетчик / 4;

Подробнее про операции, совмещенные с присваиванием.

Логические операции

Операции сравнения на равенство и на неравенство имеют обозначения, не такие, как в языке «1С:Предприятия»: == и !=.

Табл. 5. Пример операций сравнения на равенство и на неравенство
«1С:Шина» 1С:Предприятие 8
пер Переменная1 = 8
если Переменная1 == 20
; 
Переменная1 = 8;
Если Переменная1 = 20 Тогда
КонецЕсли;
пер Переменная1 = 8
если Переменная1 != 20
; 
Переменная1 = 8;
Если Переменная1 <> 20 Тогда
КонецЕсли;

Подробнее про логические операции.

Тернарная операция «?»

Тернарная операция ? это аналог операции ? (вычислить выражение по условию), которая существует в языке «1С:Предприятия».

Табл. 6. Пример операции ?
«1С:Шина» 1С:Предприятие 8
пер Пер1 = 8 
пер Пер2 = Пер1 > 10 ? "много" : "мало"
Пер1 = 8;
Пер2 = ?(Пер1 > 10, "много", "мало" );
Совет: Для ввода угловых скобок < и > используйте сочетание клавиш Alt + б и Alt + ю (подробнее).

Подробнее про операцию ?.

это

Операция это — новая операция. Она проверяет, что список типов выражения является присваиваемым в список типов, перечисленных в правой части операции.

Табл. 7. Проверка типа значения
«1С:Шина» 1С:Предприятие 8
пер Значение: Строка|Число = 56
пер Результат: Строка
если Значение это не Строка
    Результат = "Это не строка"
;
Значение = "тест"
если Значение это Строка
    Результат = "Это строка"
;
Значение = 56;
Если ТипЗнч(Значение) <> Тип("Строка") Тогда
    Сообщить("Это не строка")
КонецЕсли;
Значение = "тест";
Если ТипЗнч(Значение) = Тип("строка") Тогда
    Сообщить("Это строка")
КонецЕсли;

Подробнее про операцию это.

как

Операция как — это новая операция. Она пытается привести тип значения выражения слева к типу, указанному справа.

Эта операция не выполняет преобразование самих значений, она только приводит один тип к другому.

Например, необходимость в этом возникает тогда, когда универсальный механизм получает значение составного или базового типа (ИмяНомерФрагмента), а дальнейшие алгоритмы используют значения только одного конкретного типа.

метод Скрипт()
    пер Пер1 = ПолучитьID("li0034")
    пер Пер2 = ПолучитьID(465)
;
// Возвращает ID в принятом формате.
метод ПолучитьID(ИмяНомерФрагмента: Строка|Число): Число
    выбор ИмяНомерФрагмента
    когда это Число
        возврат IDпоНомеру(ИмяНомерФрагмента как Число)
    когда это Строка
        возврат IDпоНомеру(ВыделитьНомер(ИмяНомерФрагмента как Строка))
    ;
;
// Главный алгоритм вычисления ID на основе числа.
метод IDпоНомеру(Номер: Число):Число
    возврат 10000 + Номер
;
// Выделяет число из полученной строки.
метод ВыделитьНомер(Строка: Строка): Число
    возврат 34
;

Подробнее про операцию как.