|
106 | 106 | // МаскированиеКириллицы – маскирование кириллических символов современных алфавитов славянских языков.
|
107 | 107 | // Настройка изменяется в функции "НастройкаМаскированиеКириллицы" (по умолчанию отключена).
|
108 | 108 | // Не рекомендуется к использованию, так как влияет на производительность.
|
109 |
| -// Маскирование специальных символов из диапазона [0x0000, 0x001f] выполняется в не зависимости от настройки. |
| 109 | +// Маскирование специальных символов из диапазона [0x0000, 0x001f] выполняется вне зависимости от настройки. |
110 | 110 | //
|
111 | 111 | // НеявноеПриведениеПримитивныхЗначенийКлюча – неявное приведение примитивных значений ключей соответствий к строке.
|
112 | 112 | // Настройка изменяется в функции "НеявноеПриведениеПримитивныхЗначенийКлюча" (по умолчанию отключена).
|
|
254 | 254 | // АвтоматическиПриводитьОбъектыКСтруктуре - Булево. Определяет, нужно ли автоматически приводить объект к Структуре или к Соответствию.
|
255 | 255 | // - Истина - выполняется автоматическое приведение объекта к структуре;
|
256 | 256 | // - Ложь - автоматическое приведение объекта к структуре не выполняется, все объекты преобразуются в соответствие (значение по умолчанию).
|
257 |
| -// |
258 |
| -// Примечание: |
259 |
| -// Автоматическое приведение к структуре выполняется только для объектов имена свойств которых могут быть |
260 |
| -// использованы как ключи структуры, все остальные объекты преобразуются в соответствие.// |
| 257 | +// Примечание: |
| 258 | +// Автоматическое приведение к структуре выполняется только для объектов имена свойств которых могут быть |
| 259 | +// использованы как ключи структуры, все остальные объекты преобразуются в соответствие.// |
261 | 260 | //
|
262 | 261 | // Возвращаемое значение:
|
263 | 262 | // Набор данных согласно содержимому входящих данных.
|
|
281 | 280 | // - Истина - ссылки передаются вместе со своим представлением, как объекты с двумя свойствами содержащими саму ссылку и ее представление;
|
282 | 281 | // - Ложь - ссылки передаются без представления (значение по умолчанию).
|
283 | 282 | //
|
284 |
| -// Возвращаемое значение: |
285 |
| -// Строка. Строка данных в формате JSON согласно содержимому входящих данных. |
286 |
| -// |
287 |
| -Функция ЗаписатьJSON(Значение, Стандарт = Истина, ПредставленияСсылок = Ложь) Экспорт |
288 |
| - |
289 |
| - Возврат jsonЗаписатьИнициализация(Значение, Стандарт, ПредставленияСсылок); |
290 |
| - |
291 |
| -КонецФункции // ЗаписатьJSON() |
292 |
| - |
293 |
| - |
294 |
| -// ───────────────────────────────────────────────────────────────────────────── |
295 |
| -// НАСТРОЙКИ |
296 |
| - |
297 |
| -// Функция управляющая настройкой "ПолноеМаскированиеСимволов". |
298 |
| -// |
299 |
| -// Возвращаемое значение: |
300 |
| -// Булево. Значение настройки: |
301 |
| -// - Истина - выполняется полное маскирование символов некорректно обрабатываемых JavaScript-ом; |
302 |
| -// - Ложь - маскирование выполняется только согласно стандарту и дополнительно маскируются специальные символы. |
303 |
| -// |
304 |
| -// Примечание: |
305 |
| -// Маскирование специальных символов из диапазона [0x0000, 0x001f] выполняется в не зависимости от настройки. |
306 |
| -// |
307 |
| -Функция НастройкаПолноеМаскированиеСимволов() |
308 |
| - |
309 |
| - Возврат Истина; // Измените для неполного маскирования символов. |
310 |
| - |
311 |
| -КонецФункции // НастройкаПолноеМаскированиеСимволов() |
312 |
| - |
313 |
| -// Функция управляющая настройкой "МаскированиеКириллицы". |
| 283 | +// МаскироватьСимволыПолностью - Булево. Значения: |
| 284 | +// - Истина - выполняется полное маскирование символов некорректно обрабатываемых JavaScript-ом (значение по умолчнию); |
| 285 | +// - Ложь - маскирование выполняется только согласно стандарту и дополнительно маскируются специальные символы. |
| 286 | +// Примечание: |
| 287 | +// Маскирование специальных символов из диапазона [0x0000, 0x001f] выполняется в не зависимости от настройки. |
314 | 288 | //
|
315 |
| -// Возвращаемое значение: |
316 |
| -// Булево. Значение настройки: |
| 289 | +// МаскироватьКириллицу - Булево. Значение настройки: |
317 | 290 | // - Истина - выполняется маскирование кириллических символов;
|
318 |
| -// - Ложь - маскирование выполняется только согласно стандарту и дополнительно маскируются специальные символы. |
319 |
| -// |
320 |
| -// Примечание: |
321 |
| -// Маскирование специальных символов из диапазона [0x0000, 0x001f] выполняется в не зависимости от настройки. |
322 |
| -// |
323 |
| -Функция НастройкаМаскированиеКириллицы() |
324 |
| - |
325 |
| - Возврат Ложь; // Измените для маскирования кириллических символов. |
326 |
| - |
327 |
| -КонецФункции // НастройкаМаскированиеКириллицы() |
328 |
| - |
329 |
| -// Функция управляющая настройкой "НеявноеПриведениеПримитивныхЗначенийКлюча". |
| 291 | +// - Ложь - маскирование выполняется только согласно стандарту и дополнительно маскируются специальные символы (значение по умолчанию) |
| 292 | +// Примечание: |
| 293 | +// Маскирование специальных символов из диапазона [0x0000, 0x001f] выполняется в не зависимости от настройки. |
330 | 294 | //
|
331 |
| -// Возвращаемое значение: |
332 |
| -// Булево. Значение настройки: |
| 295 | +// НеявноПриводитьПримитивныеЗначенияКлюча - Булево. Значение настройки: |
333 | 296 | // - Истина - выполняется неявное приведение примитивных типов значений ключей соответствий к их строковому представлению в формате 1С;
|
334 | 297 | // - Ложь - неявное приведение примитивных типов значений ключей соответствий к строковому представлению не выполняется.
|
| 298 | +// Примечание: |
| 299 | +// Неявно приводимые типы: Null, Булево, Число, Дата, Строка, УникальныйИдентификатор. |
| 300 | +// TODO: В настоящий момент не поддерживаются в связи с необходимостью использования объекта ОписаниеТипов(); |
335 | 301 | //
|
336 |
| -// Примечание: |
337 |
| -// Неявно приводимые типы: Null, Булево, Число, Дата, Строка, УникальныйИдентификатор. |
| 302 | +// Возвращаемое значение: |
| 303 | +// Строка. Строка данных в формате JSON согласно содержимому входящих данных. |
338 | 304 | //
|
339 |
| -Функция НастройкаНеявноеПриведениеПримитивныхЗначенийКлюча() |
| 305 | +Функция ЗаписатьJSON(Значение, Стандарт = Истина, ПредставленияСсылок = Ложь, |
| 306 | + МаскироватьСимволыПолностью=Истина, МаскироватьКириллицу=Ложь, |
| 307 | + НеявноПриводитьПримитивныеЗначенияКлюча=Ложь) Экспорт |
340 | 308 |
|
341 |
| - Возврат Ложь; // Измените для использования неявного приведения примитивных значений ключей соответствий к строке. |
| 309 | + Возврат jsonЗаписатьИнициализация(Значение, Стандарт, ПредставленияСсылок, МаскироватьСимволыПолностью, МаскироватьКириллицу, Ложь); |
342 | 310 |
|
343 |
| -КонецФункции // НастройкаНеявноеПриведениеПримитивныхЗначенийКлюча() |
344 |
| - |
| 311 | +КонецФункции // ЗаписатьJSON() |
345 | 312 |
|
346 | 313 | // ─────────────────────────────────────────────────────────────────────────────
|
347 | 314 | // ПАРСЕР
|
|
822 | 789 | // ─────────────────────────────────────────────────────────────────────────────
|
823 | 790 | // СЕРИАЛИЗАТОР
|
824 | 791 |
|
825 |
| -Функция jsonЗаписатьИнициализация(Значение, Знач Стандарт, Знач ПредставленияСсылок) |
| 792 | +Функция jsonЗаписатьИнициализация(Значение, Знач Стандарт, Знач ПредставленияСсылок, |
| 793 | + Знач МаскироватьСимволыПолностью, Знач МаскироватьКириллицу, |
| 794 | + Знач НеявноПриводитьПримитивныеЗначенияКлюча) |
826 | 795 |
|
827 | 796 | // Проверка параметров.
|
828 | 797 | Если (Не Стандарт = Истина) И (Не Стандарт = Ложь) Тогда
|
|
863 | 832 | НовоеОписаниеТипов("Строка")); // ТипДопустимыхКлючей.
|
864 | 833 |
|
865 | 834 | // Типы допустимых ключей.
|
866 |
| - Если (НастройкаНеявноеПриведениеПримитивныхЗначенийКлюча() = Истина) Тогда |
| 835 | + Если НеявноПриводитьПримитивныеЗначенияКлюча = Истина Тогда |
867 | 836 | ВспомогательныеДанные.ТипДопустимыхКлючей = Новый ОписаниеТипов("Null,Булево,Число,Дата,Строка,УникальныйИдентификатор");
|
868 | 837 | КонецЕсли;
|
869 | 838 |
|
|
881 | 850 | КонецЕсли;
|
882 | 851 |
|
883 | 852 | // Сериализация.
|
884 |
| - Возврат jsonЗаписать(Значение, Стандарт, ПредставленияСсылок, ВспомогательныеДанные, Неопределено, Смещение, Отступ, Табуляция, ПереносСтроки, (НастройкаПолноеМаскированиеСимволов() = Истина), (НастройкаМаскированиеКириллицы() = Истина)); |
| 853 | + Возврат jsonЗаписать(Значение, Стандарт, ПредставленияСсылок, ВспомогательныеДанные, Неопределено, Смещение, Отступ, Табуляция, ПереносСтроки, (МаскироватьСимволыПолностью = Истина), (МаскироватьКириллицу = Истина)); |
885 | 854 |
|
886 | 855 | КонецФункции // jsonЗаписатьИнициализация()
|
887 | 856 |
|
|
0 commit comments