65Структура.Ценацена
"хлеб"товар
Три способа прочитать значение свойства — с разным поведением при отсутствии ключа.
Структура = Новый Структура("Товар, Цена", "хлеб", 65);
Значение = Структура.Цена; // 65 — обращение через точку
Значение = Структура["Цена"]; // 65 — то же самое, имя можно вычислить в коде
Если Структура.Свойство("Скидка", Значение) Тогда
// сюда не попадём — свойства "Скидка" нет
Иначе
Значение = 0;
КонецЕсли;| Способ | Свойства нет |
|---|---|
Структура.Ключ | исключение времени выполнения |
Структура["Ключ"] | исключение времени выполнения |
Структура.Свойство(Ключ, Значение) | Ложь, исключения нет |
Свойство(Ключ, Значение) — единственный способ узнать, есть ли в структуре нужное свойство, не оборачивая обращение в Попытка. Второй параметр необязательный — без него метод только проверяет наличие; с ним значение записывается в переданную переменную, но лишь если свойство нашлось (при отсутствии переменная не трогается). Подробности и примеры — Свойство().
Квадратные скобки нужны, когда имя свойства заранее неизвестно — приходит параметром, собирается из частей и т.п.:
ИмяСвойства = "Цена";
Значение = Структура[ИмяСвойства];