用一个变量,保存动态定义的函数,为何用toString()方法显示这个变量的代码,函数名称不对呢?
<script type="text/javascript">
var fun1=new Function("x",'y',"return x>y?x:y;");
var s=fun1.toString();
alert(fun1(95,894));
document.write(fun1.toString());
//为何打印出来的函数名为 anonymous呢?应该是 fun1 呀?
//function anonymous(x, y) { return x>y?x:y; }
</script>//为何打印出来的函数名为 anonymous呢?应该是 fun1 呀?
因为已经将这个函数对象用变量保存下来了,并不是匿名的呀?
<script type="text/javascript">
var fun1=new Function("x",'y',"return x>y?x:y;");
var s=fun1.toString();
alert(fun1(95,894));
document.write(fun1.toString());
//为何打印出来的函数名为 anonymous呢?应该是 fun1 呀?
//function anonymous(x, y) { return x>y?x:y; }
</script>//为何打印出来的函数名为 anonymous呢?应该是 fun1 呀?
因为已经将这个函数对象用变量保存下来了,并不是匿名的呀?
<script type="text/javascript">
function test(){alert('111');}
var fun1=test;
fun1();
document.write(fun1.toString());//打印test
</script>