jsexecutor クラス : Execute(string,bool)メソッド
説明
JavaScriptコードを実行します。
構文
instance.Execute(string jscode, bool complement)
引数
クラス | 名前 | 説明 |
string | jscode | JavaScriptコード。 |
bool | complement | 即時関数化。 |
返り値
クラス | 説明 |
string | JavaScriptコードからの返り値。 |
サンプルコード
1: | jsexecutor jse; // For Main-browser |
2: | string result = jse.Execute("alert('hello world!');", true); // It show dialog and return "null". |
3: | result = jse.Execute("return 'hello world!';", true); // It occur an exception and return "null". |
注意
第二引数で JavaScript コードを即時関数式に補完するかどうかを指定します。
true なら補完します。false なら補完しません。
補完される場合は以下のようになります。
return 'result'; -> (function (token){return 'result';}("0f8fbd59d9cb769fa16570867728950e"));
補完の有無により期待した結果が得られない場合が有ります。注意して下さい。
即時関数化の方法についてはJavaScriptコードの実行:即時関数化を参照してください。
返り値が string であることに注意してください。
結果が数値の時は、数値が文字列として戻ります。例 : 1 -> '1' / 1.05 -> '1.05'
結果が真偽値の時は、値が文字列として戻ります。例 : true -> 'true' / false -> 'false'
結果が文字列の時は、文字列がダブルクォートで囲まれて戻ります。例 : 'Returned string' -> '"Returned string"'
結果が null、undefined、配列、オブジェクト、関数オブジェクト、または評価不能の時は、文字列 'null' が戻ります。
実行の結果として例外が発生した場合も、null が返されます。
参照リンク
無し。