Регистрозависимость
Синтаксис языка «1С:Элемент» регистрозависимый. Однако в нем действует следующее ограничение на наименования переменных: нельзя объявить две переменные, которые отличаются только регистром.
Имена переменных
РабочийКаталог = "C:\test\";
рабочийКаталог = "D:\worker\";
пер РабочийКаталог = "C:\\test\\"
пер рабочийКаталог = "D:\\worker\\"
Ключевые слова
Если РабочийКаталог = "" Тогда
Возврат;
КонецЕсли;
если РабочийКаталог = "" тогда
возврат;
конецесли;
если РабочийКаталог == ""
возврат
;
Если РабочийКаталог == ""
Возврат
;
Версии = новый Массив();
Версии = Новый Массив();
пер Версии = новый Массив<Версия>()
пер Версии = Новый Массив<Версия>()
Ключевые слова
Все ключевые слова языка «1С:Элемент» пишутся строчными буквами. Прописные буквы в ключевых словах не используются. Это позволяет отличать ключевые слова от идентификаторов при просмотре кода без наличия подсветки, например в системах контроля версий.
Примеры ключевых слов
Процедура Скрипт()
КонецПроцедуры
Если Резул ьтат = 0 Тогда
КонецЕсли;
Для Счетчик = 1 по 5 Цикл
КонецЦикла;
Упрощенные инструкции
Простые и составные инструкции
Многие привычные инструкции упрощены. Точка с запятой ; в конце простых инструкций не ставится. Этот символ используется в конце составных инструкций вместо ключевых слов КонецЕсли, КонецЦикла, КонецПроцедуры, КонецФункции и так далее.
Процедура Скрипт()
Результат = 0;
Если Результат = 0 Тогда
Для Счетчик = 1 по 5 Цикл
Результат = Результат + 1;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
метод Скрипт()
пер Результат = 0
если Результат == 0
для Счетчик = 1 по 5
Результат += 1
;
;
;
После «если» не пишется «тогда»
В инструкции если не используется ключевое слово Тогда.
Если Результат = 0 Тогда
КонецЕсли;
После «для по» не пишется «цикл»
В инструкции для по не испо льзуется ключевое слово Цикл.
Для Счетчик = 1 по 5 Цикл
КонецЦикла;
После «пока» не пишется «цикл»
В инструкции пока не используется ключевое слово Цикл.
Счетчик = 1;
Пока Счетчик < 5 Цикл
Счетчик = Счетчик + 1;
КонецЦикла;
пер Счетчик = 1
пока Счетчик < 5
Счетчик += 1
;
Для ввода углов ых скобок < и > используйте сочетание клавиш Alt + б и Alt + ю (подробнее).
В цикле «для из» не пишется «каждого»
В инструкции для из не используется ключевое слово Каждого.
Массив = Новый Массив();
Массив.Добавить(1);
Массив.Добавить(3);
Массив.Добавить(5);
Массив.Добавить(7);
Массив.Добавить(9);
Для Каждого Элемент Из Массив Цикл
Сообщить("Элемент - " + Элемент)
КонецЦикла;
для Элемент из [1, 3, 5, 7, 9]
пер Результат = "Элемент - %Элемент"
;
Для ввода квадратных скобок [ и ] используйте сочетание клавиш Alt + х и Alt + ъ (подробнее).
Статическая типизация
Язык «1С:Элемент» статически типизированный. Это значит, что у каждой переменной, параметра и метода, возвращающего значение, должны быть описаны типы.
Объявление переменной
Переменные нужно объявлять явно. Тип переменной может быть указан явно. Если при объявлении переменной выполняется ее инициализация литералом, то тип переме нной рекомендуется не указывать.
пер РабочийКаталог: Строка
пер РабочийКаталог = "C:\\test\\"
Объявление метода
Процедура КакПроцедура(Парам1,
Парам2)
Результат = Парам1 + Парам2;
КонецПроцедуры
метод КакПроцедура(Парам1: Строка,
Парам2: Число)
пер Результат = Парам1 + Парам2
;
Объявление типа возвращаемого значения
Функция КакФункция(Парам1,
Парам2)
Возврат Парам1 + Парам2;
КонецФункции
метод КакФункция(Парам1: Строка,
Парам2: Число): Строка
возврат Парам1 + Парам2
;
Объявление переменной любого типа
В языке «1С:Элемент» сохранена возможность д инамической типизации в стиле «1С:Предприятия». Для этого в описании типа нужно использовать ключевое слово неизвестно. В этом случае все проверки кода с момента написания переносятся на момент его выполнения.
пер РабочийКаталог: неизвестно
Объявление метода с параметрами любого типа
Процедура КакПроцедура(Парам1,
Парам2)
Результат = Парам1 + Парам2;
КонецПроцедуры
метод КакПроцедура(Парам1: неизвестно,
Парам2: неизвестно)
пер Результат = Парам1 + Парам2
;
Объявление любого типа возвращаемого значения
Функция КакФункция(Парам1,
Парам2)
Возврат Парам1 + Парам2;
КонецФункции
метод КакФункция(Парам1: неизвестно,
Парам2: неизвестно): неизвестно
возврат Парам1 + Парам2
;
Составные типы
В языке «1С:Элемент» поддерживаются составные типы. С их помощью вы можете указать, что переменная принимает значение одного из нескольких типов.
пер Переменная1: Строка|Число|Булево = 0
пер Переменная2: Строка?
Для ввода вертикальной черты | используйте сочетание клавиш Alt + \ (подробнее).
Константа
В языке «1С:Элемент» можно использовать константы, объявив их с помощью ключевого слова конст.
конст РАБОЧИЙ_КАТАЛОГ = "C:\\test\\"
метод Скрипт()
пер ФайлРезультата = новый Файл(РАБОЧИЙ_КАТАЛОГ + "test.txt")
;
Методы
В языке «1С:Элемент» нет деления на процедуры и функции. Для объявления переиспользуемого блока кода всегда применяется ключевое слово метод.
Если метод возвращает значение, то его тип должен быть описан.
Пример описания и использования методов
Процедура Скрипт()
КакПроцедура("номер ", 5);
Результат = КакФункция("номер ",5);
КонецПроцедуры
Процедура КакПроцедура(Парам1,
Парам2)
Результат = Парам1 + Парам2;
КонецПроцедуры
Функция КакФункция(Парам1,
П арам2)
Возврат Парам1 + Парам2;
КонецФункции
метод Скрипт()
КакПроцедура("номер ", 5)
пер Результат = КакФункция("номер ",5)
;
метод КакПроцедура(Парам1: Строка,
Парам2: Число)
пер Результат = Парам1 + Парам2
;
метод КакФункция(Парам1: Строка,
Парам2: Число): Строка
возврат Парам1 + Парам2
;
Передача аргументов по значению
Изменение параметра в вызываемом методе не приводит к изменению аргумента
В языке «1С:Элемент» аргументы передаются в методы только по значению — то есть изменение значения параметра при выполнении метода никак не повлияет на переданный аргумент.
Во встроенном языке «1С:Предприятия 8» существует возможность передавать аргументы по ссылке так, что изменение значения параметра в вызываемом методе приведет к изменению аргумента.
Процедура Скрипт()
Переменная1 = 30;
Метод1(Переменная1);
КонецПроцедуры
Процедура Метод1(пер1)
пер1 = 100;
КонецПроцедуры
метод Скрипт()
пер Переменная1 = 30
Метод1(Переменная1)
;
метод Метод1(пер1: Число)
пер1 = 100
;
Изменение экземпляров с помощью их методов
Как и во встроенном языке «1С:Предприятия 8», в языке «1С:Элемент» вы можете изменять экземпляры, переданные через параметры, с помощью методов этих экземпляров.
Процедура Скрипт()
Массив1 = новый Массив();
Массив1.Добавить(1);
Метод3(Массив1);
КонецПроцедуры
Процедура Метод3(масс)
масс.Добавить(2);
КонецПроцедуры
метод Скрипт()
пер Массив1 = [1]
Метод3(Массив1)
;
метод Метод3(масс: Массив<Число>)
масс.Добавить(2)
;
Ввод английских символов без переключения раскладки
Синтаксические констру кции языка «1С:Элемент» содержат символы, которые обычно расположены в английской раскладке клавиатуры. В среде разработки можно вводить эти символы, не переключаясь на английскую раскладку с помощью клавиши Alt.
Для ввода вертикальной черты |, которая используется, например, при перечислении типов, используйте Alt + \.
пер СтрокаЧисло: Строка|Число = 5
Для ввода квадратных скобок [ и ], которые используются, например, при перечислении значений, используйте Alt + х и Alt + ъ.
Для ввода фигурных скобок { и }, которые используются, например, при включении в строковый литерал вычисляемых выражений, используйте Alt + 9 и Alt + 0.
пер ТекущееВремя = "Сейчас %{Время.Сейчас()|ЧЧ:мм}"
Для ввода угловых скобок < и >, которые используются, например, в логических выражениях, используйте Alt + б и Alt + ю.
для Число из Числа
выбор Число
когда < 1
Консоль.Записать("<1")
когда >= 1
Консоль.Записать(">=1")
;
;
Кроме перечисленных символов есть и другие, которые можно ввести аналогичным образом:
Многострочные комментарии
В языке «1С:Элемент» поддерживаются многострочные комментарии.