JavaScript – 函数构造函数(Function() Constructor)
函数语句不是定义新函数的唯一方法,您还可以使用 Function() 构造函数以及 new 运算符动态定义函数。
注意 − 构造函数是面向对象编程中的一个术语。第一次可能会感到不适,这是可以接受的。
语法
以下是使用 Function() 构造函数以及 new 运算符创建函数的语法。
<script type = "text/javascript">
<!--
var variablename = new Function(Arg1, Arg2..., "Function Body");
//-->
</script>
Function() 构造函数需要任意数量的字符串参数。最后一个参数是函数体 – 它可以包含任意JavaScript语句,它们由分号分隔。
请注意, Function() 构造函数没有传递任何指定创建的函数名称的参数。使用 Function() 构造函数创建的 无名函数 称为 匿名函数 。
示例
尝试以下示例。
<html>
<head>
<script type = "text/javascript">
<!--
var func = new Function("x", "y", "return x*y;");
function secondFunction() {
var result;
result = func(10,20);
document.write ( result );
}
//-->
</script>
</head>
<body>
<p>单击以下按钮调用函数</p>
<form>
<input type = "button" onclick = "secondFunction()" value = "调用函数">
</form>
<p>在函数内使用不同的参数,然后尝试...</p>
</body>
</html>