Имя: Пароль:
1C
1С v8
Почему Неопределено подходит для JSON?
,
0 mikecool
 
19.07.22
12:21
Риторический вопрос
В справке - допустимые типы перечислены, среди них нет Неопределено и Null
Согласно https://www.schoolsw3.com/js/js_json_datatypes.php(первая попавшаяся ссылка по типам, допустимым в json) - Null подходит, undefined - нет
Наткнулся - не может записать жсон, передано недопустимое значение. Почитал сначала интернеты, исправил Неопределено, все равно не работает, исправил Null - заработало. Решил проэкспериментировать - оставил Неопределено, и оно спокойно ушло в ЗаписатьJSON

Вот так-то , мой гений дарит вам )))
1 mikecool
 
19.07.22
12:24
допускаю, что Неопределено преобразовывается согласно настройки сериализации, но чего тогда null обделили? )))
2 Ryzeman
 
19.07.22
12:25
(0) Если очень интересно, вот стандарт языка:

https://datatracker.ietf.org/doc/html/rfc8259

Почему 1сники конкретно так реализацию сделал - это вопрос к ним)
3 Kassern
 
19.07.22
12:25
Потому что Неопределено<>null
4 mikecool
 
19.07.22
12:26
(3) спасибо, кеп )))
сейчас еще Ненавижу придет и понесется ))
5 Kassern
 
19.07.22
12:27
(4) вы сами развязали этот холивар))
6 Ryzeman
 
19.07.22
12:27
(2) ну и да. Согласно документации undefined в стандарте языка нет, а null есть. 1с сделали через задницу, сериализовав наоборот.
7 Ryzeman
 
19.07.22
12:28
Кстати, а что он пишет в Неопределено на выходе? Лень проверять. Неужели null?
8 mikecool
 
19.07.22
12:32
(7) ага, пишет NULL
9 Гипервизор
 
19.07.22
12:34
(0) Читаем в СП про ЗаписатьJSON:
Примечание:
Значения не всех типов могут быть записаны в формате JSON данным методом.
В JSON могут быть записаны значения следующих типов:
Неопределено,
Булево,
Число,
Строка,
Дата (будет преобразована в строку),
Структура,
ФиксированнаяСтруктура,
Массив,
ФиксированныйМассив,
Соответствие,
ФиксированноеСоответствие.
В дальнейшем список может пополняться.

Потому Неопределено и спокойно ушло.
10 Ryzeman
 
19.07.22
12:35
(9) должно быть
Неопределено (будет преобразовано в null)

ИМХО
11 Гипервизор
 
19.07.22
12:38
(10) А в руководстве разработчика в главе Работа с JSON так и написано: Неопределено – сериализуется в null.
12 Ненавижу 1С
 
гуру
19.07.22
12:39
(4) пришёл, посмотрел, слабенький наброс
13 mikecool
 
19.07.22
13:29
(9) у меня в справке это(8.3.20.1710)
В формате JSON допускается записывать только значения следующих типов:
Строка,
Число,
Булево,
Дата (преобразованная в строку),
Массив,
ФиксированныйМассив,
Структура,
ФиксированнаяСтруктура,
Соответствие,
ФиксированноеСоответствие.
14 Kassern
 
19.07.22
13:34
(13) а ниже пролистать?
15 Kassern
 
19.07.22
13:34
до примечания)
16 Ryzeman
 
19.07.22
13:35
(15) первое слово дороже второго)
17 mikecool
 
19.07.22
13:39
(15) в рот мне ноги... )) слона не заметил, спасибо за примечание в справке )))