12

私が間違っていなければ、 eval は指定された文字列で有効なコードを実行します

eval("alert('hey')");

setTimeout("alert('hey')",1000);

タイマーのみを使用して、ほぼ同じことを行います。タイムアウトを設定するのは eval と同じくらい危険ですか?

4

2 に答える 2

20

私はあなたが同じ反対意見を聞いていると思います。setTimeout(関数パラメーターではなく文字列を使用)はevalとほとんど同じです。

もし可能なら、

 setTimeout(function(){ alert ("hey") ; }, 1000);
于 2010-08-16T09:43:14.247 に答える
4

なぜなら、人々が「eval」と言うとき、それらは「evalと多かれ少なかれevalと同等の機能」を意味しますが、前者は言うのがはるかに短いからです。だからあなたの質問への答えはイエスです、それは危険です。

于 2010-08-16T09:43:08.190 に答える