sfd
🖥 Выполнение JavaScript кода, хранящегося в строке: методы ▶️Итак, если коротко, то для того чтобы выполнить JavaScript-код, записанный в виде строки, можно воспользоваться функцией eval(): eval("alert('Выполнено!');"); В результате появится всплывающее окно с текстом "Выполнено!". Но будьте осторожны: функция eval() может выполнить любой скрипт, который ей будет предоставлен. Функция eval() обладает большими рисками для безопасности. Важно убедиться в том, что JavaScript-строка правильно обработана перед ее использованием в eval(), так как инъекции кода могут иметь серьезные последствия. Альтернативы для запуска строк JavaScript ▶️Использование функции конструктора `Function` let func = new Function("return 'Привет, мир!';"); func(); // Привет, мир! Этот метод умеет обходить внешний контекст. ▶️Модуль `vm` в Node.js В Node.js существует модуль vm, который предоставляет отдельный контекст для выполнения JavaScript-строк. const vm = require('vm'); const script = new vm.Script("console.log('Привет из VM');"); script.runInThisContext(); // Привет из VM ▶️Безопасное выполнение с помощью `vm2` в Node.js vm2 предоставляет ограниченное окружение для запуска ненадежного кода. const { VM } = require('vm2'); const vm = new VM(); vm.run("console.log('Выполнение в песочнице');"); // Выполнение в песочнице Не забудьте следить за обновлениями в части безопасности и обратите внимание на устаревшие API в vm2, чтобы избежать проблем. ▶️Запуск скриптов с помощью jQuery Ни одна замена не сможет заменить добрые старые теги <script>, которые можно использовать для запуска JavaScript-строк с помощью jQuery. let code = "$('body').append('<p>Привет от jQuery!</p>');"; $('<script>').attr('type', 'text/javascript').text(code).appendTo('body'); // Привет от jQuery! @javascript_react
Дополнение к базовому курсу по Python. Функция eval()
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. А это ссылки на подборку по основному курсу по Python Встроенная функция eval() В данной статье я вернусь к базовому курсу Python. Функция eval() того стоит. Эта функция Параметры строки: Важно отметить, что строка для выполнения должна быть выражением, а не фрагментом программы. Т.е. if, for, while и другие программные конструкции здесь не допускаются...