Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Выполнение скрипта из JSON (https://javascript.ru/forum/misc/34032-vypolnenie-skripta-iz-json.html)

KupueIIIKo 18.12.2012 15:38

Выполнение скрипта из JSON
 
Прошу не судить сильно) Но я решил передавать коды скриптов в JSON)
Принимаю код) А как теперь его выполнить?)
И вообще кто думает хорошая это идея или нет?)

Sanda 18.12.2012 16:13

Идея ужасная, потому что потом совершенно невозможно будет понять, что где происходит. В JSON вполне можно передавать название метода у какого-нибудь объекта, ответственного за обработку запросов.
А то, как выполнять код, зависит от того, как Вы его передаёте. Вообще, насколько я понимаю, единственный способ - eval, но он крайне не рекомендуется к использованию.
Вообще, откуда возникла необходимость передачи текста скрипта в JSON?

godofjavascript 18.12.2012 16:43

а я вопроса не понял,к что значит выполнить json?? собрать обьект из строки штоле?

JSON.parse()

KupueIIIKo 18.12.2012 16:45

function parseandexec(json_string)
	{
		var obj = $.parseJSON(json_string);
		eval(obj.script);
		$('#content').html(obj.content);
	}

Теперь проблема в передаче html кода через json

KupueIIIKo 18.12.2012 16:52

Ладно если что можно будет выполнять через new Function! Думаю это все одобрят?

Sanda 18.12.2012 17:18

Не одобрят, ибо это тот же eval. Вопрос прежний - а зачем такие... кхм... извращения? Неужели юзеру нужно дать выполнять на сайте всё, что угодно?

cyber 18.12.2012 17:45

KupueIIIKo,
а зачем скрипт подгружать через json?
можно динамически подключить нужный файл и все будет ок...

KupueIIIKo 18.12.2012 17:50

Суть примерно такова! Я генерирую js скрипты! Вот буду их выполнять через new Function! Эту проблему я решил ;)
Сейчас хочу передавать в json еще html код!
То есть при получении json ответа! Мой JS смотрит переменную и вставляет html - код! если для него есть JS - то выполняет его!
И так пока не пройдется по всем Div! Параллельно собирая данные!

KupueIIIKo 18.12.2012 17:51

А генерирует сервак скрипты! Все зависит от пришедших данных) Пишу мост на JSON! Клиент-СЕРВЕР! Сокеты не предлагать)

KupueIIIKo 18.12.2012 17:57

+ хотелось бы подробней о минусах eval! кроме проблем с локальными переменными я нечего незнаю)

Sanda 18.12.2012 18:01

Цитата:

- Скажите, а можно внешний модем внутрь корпуса вставить?
- Нет, ну можно, конечно, а зачем?
- Ой, вот давайте не будем задавать глупых вопросов!
Прям-таки без генерации скриптов на сервере никак не обойтись? Натурально нельзя написать одну функцию, которая в зависимости от пришедших данных выдаёт такой же результат? И потом загрузить её на клиент.

KupueIIIKo 18.12.2012 18:05

Цитата:

Сообщение от Sanda (Сообщение 222134)
Прям-таки без генерации скриптов на сервере никак не обойтись? Натурально нельзя написать одну функцию, которая в зависимости от пришедших данных выдаёт такой же результат? И потом загрузить её на клиент.

Я работаю в сторону экономии трафика! + судя по вашему ответу, мне тупо придется обновлять всю страницу! тогда зачем вообще ajax?

KupueIIIKo 18.12.2012 18:45

:) Все справился с проблемой! Но насчет eval и new Function я бы послушал информацию, и безопасно ли выполнение?

godofjavascript 18.12.2012 19:01

KupueIIIKo,
1) а што такое JSON?
2) и кто все эти люди которые с тобой разговаривают будто понимая о чем ты говоришь? а, я кажется понял, видимо нубы нашли общий язык))
3) почему ты создаешь много постов подряд?

KupueIIIKo 18.12.2012 19:11

:lol: я больше с зачеркнутой строкой согласен)

godofjavascript 18.12.2012 19:16

к слову JSON - javascript обжект нотейшен.
нотация обьектов яваскрипта. а теперь зная это перечитай весь тред сначала)
мне было весело)


Часовой пояс GMT +3, время: 14:12.