JavaScriptのeval関数

1071 ワード

定義と用法
eval()関数は、ある文字列を計算し、JavaScriptコードを実行します.
構文
eval(string)
パラメータの説明
stringが必要です.計算する文字列には、計算するJavaScript式または実行する語句が含まれています.
戻り値
stringを計算して得られた値(あれば).
説明
この方法は元の文字列だけをパラメータとして受け入れ,もしstringパラメータが元の文字列でないなら,この方法は何の変化もなしに戻るであろう.したがって、eval()関数のためにStringオブジェクトを渡すのはやめてください.
eval属性を上書きしようとした場合、またはeval()方法を別の属性に付与し、この属性を通じて呼び出した場合、ECMAScript実装はEvarr異常をスローすることができます.
投げ出す
パラメータに正当な表現とステートメントがない場合は、SyntxErr異常をスローします.
eval()を不正に呼び出したら、Evarr異常をスローします.
eval()に渡されたJavascriptコードに異常が発生した場合、evalはこの異常をコーディネーターに伝達します.
ヒントとコメント
ヒント:eval()の機能は非常に強力ですが、実際に使う場合は多くありません.
eg:
<SCRIPT language="javascript">
    function showsubmenu(sid)
    {
        whichEl = eval("submenu" + sid);
        if (whichEl.style.display == "none"){
            eval("submenu" + sid + ".style.display=\"\";");
        }else{
            eval("submenu" + sid + ".style.display=\"none\";");
        }
    }
</SCRIPT>