看下这篇文章,应该可以解决你的问题
http://blog.csdn.net/jayqiang/article/details/7066824

解决方案 »

  1.   

    首先谢谢楼上同学为此专门发了个博文。不过我这里不是专门针对JSON格式读取,就是说,也要考虑js中返回的这类数组变量
    var my_array = new Array();
    其实,之前要在pascal程序中处理json数据时也搜索到SuperObject等组件使用过,不过总觉得不容易用,BUG多,因为算法较复杂,虽然是开源的,自己去Debug也很痛苦。所以我在并不对处理JSON数据速度要求很高的场合,还是打算采用ScriptControl处理,这样功能模块在不同的开发语言环境下也容易得多。
      

  2.   

    今天有人私信我,所以这里回复一下。后来这个需求改用VB6做了,自己在js里添了个elem函数,曲线救国了。
    Private Sub InitScriptControl()
        Dim strJs As String, strJson$
        Set fScriptcontrol = CreateObject("MSScriptControl.ScriptControl")
        fScriptcontrol.Language = "JavaScript"
        strJs = "Object.prototype.elem= function(index){return(this[index]);}" & vbCrLf
        strJs = strJs & "Object.prototype.nickname= 'cool';" & vbCrLf
        strJs = strJs & "function testJson(sJson){var myObject;myObject = eval('(' + sJson + ')');return(myObject);}"
        fScriptcontrol.AddCode strJs
        
    End Sub