Почему люди говорят, что JavaScript Eval () - это зло, но вы не получаете возражений против Settimeout и Setinterval etc?
-
28-09-2019 - |
Вопрос
Если я не ошибаюсь eval, выполняет действительный код в данной строке
eval("alert('hey')");
и
setTimeout("alert('hey')",1000);
делает только одно же, только с таймером. Установите TimeOut так же рискованно, как Eval?
Решение
Я бы сказал, что вы слышите одинаковые возражения. Settimeout (со строкой, а не функциональными параметрами) в значительной степени такой же, как Eval.
Если возможно,
setTimeout(function(){ alert ("hey") ; }, 1000);
Другие советы
Потому что, когда люди говорят «Eval», они означают «Eval и любую функцию, которая более или менее эквивалентна Eval», но первая намного короче сказать. Таким образом, ответ на ваш вопрос - да, он так же рискован.
Не связан с StackOverflow