function callAnyFunc(window, param)
{
    window.execScript(param);
}
调用:callAnyFunc(window,"testfunc();") //这里一定要带圆括号

解决方案 »

  1.   

    还要加上一个条件,因为现在是在 callAnyFunc 里面生成了一个 Array 数组,要在调用该方法的同时也把这个 Array 也传到这个方法里面去!<script>
       function callAnyFunc(window, param) {
            var arrayValue = getParamArray();
            如果用:
            window.execScript(param); 
            //那这里面如何把 arrayValue 也传到这个 param 方法里面去?
            //现在要求所有的 param 传进来的方法,都必须要定义一个参数 ,如:testfunc(newValue) {}
       }
    </script>
      

  2.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function test(s1,s2,s3){
    alert(s1+s2+s3)
    }
    function  getParamArray(){
    return ["Hello", " World" , "!"];
    }
    function callAnyFunc(win, param) {
    var arrayValue = getParamArray();
    var s = "win." + param;
    for (var i=0;i<arrayValue.length;i++){
    if(i == 0){
    s = s + "('" + arrayValue[i] + "'" ;
    }
    if(i > 0){
    s = s + ", '" + arrayValue[i] + "'" ;
    }
    }
    s = s + ");";
    eval(s);
    }
    var w = window;
    callAnyFunc(w,"test");
    //-->
    </SCRIPT>
    </BODY>
    </HTML>