动态定义的函数,错在哪里呢? <script type="text/javascript">
var fun1=new Function(x,y,"return (x+y);");
var s=fun1.toString();
document.write(s);
</script>
我的目的是动态定义一个函数,然后印出它的代码来,但是以上代码为何报错呢?
var fun1=new Function(x,y,"return (x+y);");
var s=fun1.toString();
document.write(s);
</script>
我的目的是动态定义一个函数,然后印出它的代码来,但是以上代码为何报错呢?
var fun1=new Function("x","y","return (x+y);");
var s=fun1.toString();
document.write(s);
这里x,y都是数值型呀,不是字符串型呀。
因为 return x+y;
这也表示,x,y都不是字符呀,
为何参数中,必须要加上引号才对呢?
如果不用字符串,不就和外面的叫x,y的变量搞起来了?
var fun1=new Function("x","y","return (x+y);");
// 调用
fun1(1, 2);这里的fun1也不过是函数指针