new Function( arg1, arg2, … argN, functionBody )は、Functionオブジェクトのコンストラクタ。
引数を渡せるFunctionオブジェクトを作るときに使う。
JavaScriptにおいて、関数は、Functionオブジェクトである。
構文
new Function( "arg1", "arg2", … "argN", "functionBody" )
引数
- "arg1", "arg2", … "argN"
- 複数の仮引数を指定できる。
- 省略可能。
- "functionBody"
- 関数を呼び出したときに実行するJavaScript文。
Functionオブジェクト生成例
// 生成例
var $sampleFunction = new Function( "arg1", "arg2", "return arg1 + arg2" );
// 呼び出し例
$sampleFunction( 3 , 2 );
var $sampleFunction = new Function( "arg1", "arg2", "return arg1 + arg2" );
// 呼び出し例
$sampleFunction( 3 , 2 );
サンプル
<script type="text/javascript">
var $sampleTasu = new Function( "arg1", "arg2", "return arg1 + arg2" );
document.write( '$sampleTasu( 3, 2 ): ' + $sampleTasu( 3, 2 ) + '<br />' );
var $sampleHiku = new Function( "arg1", "arg2", "return arg1 - arg2" );
document.write( '$sampleHiku( 3, 2 ): ' + $sampleHiku( 3, 2 ) + '<br />' );
var $sampleKakeru = new Function( "arg1", "arg2", "return arg1 * arg2" );
document.write( '$sampleKakeru( 3, 2 ): ' + $sampleKakeru( 3, 2 ) + '<br />' );
</script>
var $sampleTasu = new Function( "arg1", "arg2", "return arg1 + arg2" );
document.write( '$sampleTasu( 3, 2 ): ' + $sampleTasu( 3, 2 ) + '<br />' );
var $sampleHiku = new Function( "arg1", "arg2", "return arg1 - arg2" );
document.write( '$sampleHiku( 3, 2 ): ' + $sampleHiku( 3, 2 ) + '<br />' );
var $sampleKakeru = new Function( "arg1", "arg2", "return arg1 * arg2" );
document.write( '$sampleKakeru( 3, 2 ): ' + $sampleKakeru( 3, 2 ) + '<br />' );
</script>
↓↓↓出力結果↓↓↓