|
кто разбирается JScript - подскажите что делает код
|
Я
|
|
Джордж1 09.12.20 - 16:56 | Код такой:
| function parseJSON(strJSON) {
| var tmpFunc = (new Function('return('+strJSON+');'))();
| return(tmpFunc);
| }
А вызывается так:
_Ответ = scriptCtrl.run("parseJSON", Ответ );
Проблема в том что на WSH 5.7 он не работает, а на WSH 5.8 работает |
Fram 1 - 09.12.20 - 17:02 | Вроде по названию понятно, парсит json - строку в объект
|
Fram 2 - 09.12.20 - 17:03 | Оригинальный способ ) не знал о таком
|
ДенисЧ 3 - 09.12.20 - 17:03 | берёт жисон, делает вид, что это функция и вызывает оную.
Вроде как так.
|
Fram 4 - 09.12.20 - 17:05 | ( 0) попробуй просто JSON.parse(strJSON) |
Джордж1 5 - 09.12.20 - 17:07 | ( 4)у меня 7-ка. нет там JSON |
Джордж1 6 - 09.12.20 - 17:08 | ( 1)А что есть "объект"?
Вот такую строку парсит в ничего "{"Command":"XReport","Error":"","Warning":"","Message":"","Status":0,"IdCommand":"","NumDevice":2}" |
Fram 7 - 09.12.20 - 17:08 | |
Джордж1 8 - 09.12.20 - 17:09 | ( 7)чистый js работать с JSON не умеет |
Fragster 9 - 09.12.20 - 17:09 | |
Джордж1 10 - 09.12.20 - 17:11 | ( 9)можно понять для чего.
Так бы и не обратил внимание, но на 7-ке и 10-ке все работает, а на WinXP уж нет |
Fragster 11 - 09.12.20 - 17:17 | ( 10) на клиенте для норм парсинга можно юзать поле html документа, на сервере - чтениеJSON. Нафиг юзать jscript - не знаю. |
Джордж1 12 - 09.12.20 - 17:20 | |
Fram 13 - 09.12.20 - 17:20 | ( 6) предположу что com объект, но это не точно |
Fram 14 - 09.12.20 - 17:21 | ( 9) в принципе кроме объекта функция из ( 0) больше ничего не сможет вернуть |
Fram 15 - 09.12.20 - 17:24 | ( 14)+ или выполнить. Там же ещё один return внутри |
Fragster 16 - 09.12.20 - 17:25 | ( 14) может выполнить кучу интересного по дороге |
mistеr 17 - 09.12.20 - 17:25 | ( 2) Именно что "оригинальный". С него и начался JSON. |
Fragster 18 - 09.12.20 - 17:26 | strJSON = undefined && alert("hacked"
|
Fragster 19 - 09.12.20 - 17:27 | скобку после undefined пропустил
|
Джордж1 20 - 09.12.20 - 17:27 | Функция возвращает OLE.JScriptTypeInfo
Дальше идет разбор json в список значений |
Джордж1 21 - 09.12.20 - 17:28 | Как-то не хочется разбор json писать на 1С, но возможно придется
|
Garykom 22 - 09.12.20 - 17:30 | ( 21) он давно написан, погугли |
mistеr 23 - 09.12.20 - 17:30 | |
Джордж1 24 - 09.12.20 - 17:31 | ( 22)да вот тот что нагуглил и работает через WSH.
( 23)еще раз - у меня 7-ка!!! |
Джордж1 25 - 09.12.20 - 17:33 | преобразование СЗ в json - всего 50 строк кода.
|
Fragster 26 - 09.12.20 - 17:36 | Если Json простой, то можно попробовать через СтрЗаменить и ЗначениеИзСтрокиВнутр
|
Вафель 27 - 09.12.20 - 17:36 | формально функции я выполняет любой код. а так строка жсон в жс это объект, то ее можно использовать доя парса жсон
|
Джордж1 28 - 09.12.20 - 17:39 | ( 27)да вот не работает в WSH 5.7
Попробую на WnXP сам cscript.exe подменить более новой версии |
Garykom 29 - 09.12.20 - 17:44 | |
Garykom 30 - 09.12.20 - 17:44 | ( 29)+ нашел под 8-ку и банально переписал под 7.7 Рекламное место пустует |
mistеr 31 - 09.12.20 - 17:50 | |
Джордж1 32 - 09.12.20 - 17:50 | ( 31)что-то там про неправильную строку. нет под рукой WinXP |
Джордж1 33 - 09.12.20 - 17:52 | |
Джордж1 34 - 09.12.20 - 18:08 | ( 29)Даже почти заработало. Надо только сделать что бы сразу в нужном формате возвращало значения |
Волшебник 35 - 09.12.20 - 18:10 | Это дыра в системе
|
mistеr 36 - 09.12.20 - 23:23 | ( 35) Так же, как и Выполнить(). Но это мало кого останавливает. :) |