您当前位置: 首页 >  WEB技术 >  ASP( VBScript ) 解析 JSON
2016/4/21 11:35:15 分类:WEB技术

ASP( VBScript ) 解析 JSON

 VBScript 是 ASP 服务端程序的常用语言.

VBScript 解析 JSON是个问题. 自己写解析程序,当然不容易.
 

碰到这问题, 第一个想到的就是 JScript 了.

 

    <script language="jscript" runat="server">  
    Array.prototype.get = function(x) { return this[x]; };  
    function parseJSON(strJSON) { return eval("(" + strJSON + ")"); }  
    </script>  
    <%  
    Dim json, obj  
    json = "{a:""aaa"", b:{ name:""bb"", value:""text"" }, c:[""item0"", ""item1"", ""item2""]}"  
    Set obj = parseJSON(json)  
      
    Response.Write obj.a & "<br />"  
    Response.Write obj.b.name & "<br />"  
    Response.Write obj.c.length & "<br />"  
    Response.Write obj.c.get(0) & "<br />"  
      
    Set obj = Nothing  
    %>  

这是直接在 asp 里混用脚本.
还有一个方法就是 使用 MS 的 脚本控件. 
也一样是使用了 JScript

 

 

    Dim scriptCtrl  
    Function parseJSON(str)  
        If Not IsObject(scriptCtrl) Then  
            Set scriptCtrl = Server.CreateObject("MSScriptControl.ScriptControl")  
            scriptCtrl.Language = "JScript"  
            scriptCtrl.AddCode "Array.prototype.get = function(x) { return this[x]; }; var result = null;"  
        End If  
        scriptCtrl.ExecuteStatement "result = " & str & ";"  
        Set parseJSON = scriptCtrl.CodeObject.result  
    End Function  
      
    Dim json  
    json = "{a:""aaa"", b:{ name:""bb"", value:""text"" }, c:[""item0"", ""item1"", ""item2""]}"  
      
    Set obj = parseJSON(json)  
      
    Response.Write obj.a & "<br />"  
    Response.Write obj.b.name & "<br />"  
    Response.Write obj.c.length & "<br />"  
    Response.Write obj.c.get(0) & "<br />"  
      
    Set obj = Nothing  
      
    Set scriptCtrl = Nothing  

本文由胡金金个人网站整理发布,转载请注明地址:http://www.hujinjin.com/info/624.html

凡标明来源于胡金金个人网站的文章,皆为本站整理发布,若转载此文必须附原文链接,对部分平台更改其文内容当自己原创者,胡金金个人网站将保留其追究权利!
个人资讯推荐
友情链接