내가 아니라고하면 잘못된 평가는 주어진 문자열에 유효한 코드를 실행사람들이 javascript eval()이 악하다고 말하는 이유는 무엇입니까?하지만 setTimeout 및 setInterval 등 반대 의견이 없습니까?
eval("alert('hey')");
및
setTimeout("alert('hey')",1000);
단지 같은 일에 대해, 단지 타이머 않습니다. eval보다 위험한 시간 초과가 설정 되었습니까?
내가 아니라고하면 잘못된 평가는 주어진 문자열에 유효한 코드를 실행사람들이 javascript eval()이 악하다고 말하는 이유는 무엇입니까?하지만 setTimeout 및 setInterval 등 반대 의견이 없습니까?
eval("alert('hey')");
및
setTimeout("alert('hey')",1000);
단지 같은 일에 대해, 단지 타이머 않습니다. eval보다 위험한 시간 초과가 설정 되었습니까?
나는 같은 반대 의견을 듣고 싶습니다. setTimeout (문자열 및 함수 매개 변수가 아님)은 eval과 거의 같습니다.
가능하면
,setTimeout(function(){ alert ("hey") ; }, 1000);
'setTimeout'의 올바른 사용 예를 제공하기 위해 –
+1이 가능해서는 안됩니다. 문자열 인수를 전달하는 기능이 사람들이 자바 스크립트를 사용하는 방법보다 좋지 않은 것 같습니다. –
+1 내 코드가 보안 변경이 필요합니다.) 감사합니다. 흠, 시간 제한을 사용할 수 있다는 것을 정확히 인식하지 못했습니다. –
사람들이 "eval"이라고 말하면 "eval 및 eval과 거의 동일"한 기능을 의미하기 때문에 전자는 훨씬 짧습니다. 귀하의 질문에 대한 대답은 '예'입니다. 위험합니다.
좋은 질문 :) 내가 대답은 '예 추측 여기 더 http://stackoverflow.com/questions/197769/when-is-javascripts-eval-not- evil – mplungjan