#javascript #eval
Чем опасна функция eval в JavaScript на клиентской стороне? Кроме того, что сложнее ее отлаживать не вижу недостатков. Насчет других языков тот же Python или PHP то там все понятно.
Ответы
Ответ 1
eval требует компиляции, каждый раз когда вызывается, потому он замедляет работу скрипта Вредоносный скрипт может найти путь для передачи аргумента в eval и выполнить любой зловредный код БЕЗ ведома пользователя eval это плохой подход. Это официальный костыль, всегда есть выход безопаснее и удобнее. Как в хорошей литературе пишут обычно "Если вы используете eval или goto - значит вы что-то делаете не так" eval наследует контекст в котором он вызван, каждый раз когда вызывается eval пытается получить доступ ко всем переменным, до которых может дотянуться, со всеми вытекающими В любом случае, самая большая проблема eval'а это потенциальная дырища в безопасности, размером с вселенную. :) За всем не уследить.
Комментариев нет:
Отправить комментарий