C#怎么把数组传值给JS函数

C#如何把数组传值给JS函数?
         在WINFORM中有一个 webBrowser  控件,这个控件链接的页面是 test1.htm,在test1.htm中有 一个名字叫 add1 的js函数
            var arrSong1 = new[] { "121.48", "120.69"};
            var arrSong2 = new[] { "31.22", "30.40" };
            webBrowser1.Document.InvokeScript("add", new object[] { arrSong1, arrSong2});
js函数如下:
function add(str1,str2)
{
 alert(str1.length);
}
上面的代码在运行的时候提示  length为空或不是对象,是怎么回事?  


------解决思路----------------------
var arrSong1 = "[121.48, 120.69]";
var arrSong2 = "[31.22, 30.40]";
看看
------解决思路----------------------
直接写成: webBrowser1.Document.InvokeScript("add", arrSong1, arrSong2);
------解决思路----------------------
我试了下,下面的代码可以运行


<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>
    <script type="text/javascript">
        function add(str1, str2) {
            alert(str1);
        }

        //add('aaa', 'bbb');
    </script>
</head>
<body>

</body>
</html>


C#代码


        private void button1_Click_1(object sender, EventArgs e)
        {
            string curDir = Directory.GetCurrentDirectory();
            webBrowser1.Url = new Uri(string.Format("file:///{0}/HTMLPage2.html", curDir));

        }

       private void button2_Click(object sender, EventArgs e)
        {
            webBrowser1.Document.InvokeScript("add", new object[] {"22222", "ffffff"} );
        }

------解决思路----------------------
引用:
Quote: 引用:

直接写成: webBrowser1.Document.InvokeScript("add", arrSong1, arrSong2);

直接提示   InvokeScript  函数没有三个参数的重载


那就只用前2个参数试试看。
------解决思路----------------------

// 首先去创建两个 js 里面的对象
object arrSong1 = webBrowser1.Document.InvokeScript("eval", new object[] { "new Array('121.48', '120.69')"});
object arrSong2 =  webBrowser1.Document.InvokeScript("eval", new object[] { "new Array('31.22', '30.40')"});
// 然后再调用
webBrowser1.Document.InvokeScript("add", new object[] { arrSong1, arrSong2});
// 对数组操作都用 InvokeMember 的方式
arrSong1.GetType().InvokeMember("push", InvokeMethod, null, arrSong1, new object[] {222});


最好的办法还是修改一下脚本(如果页面是自己做的),别来回传这么复杂的东西