脚本专栏 
首页 > 脚本专栏 > 浏览文章

VBScript把json字符串解析成json对象的2个方法

(编辑:jimmy 日期: 2025/3/4 浏览:3 次 )

asp/vbscript将json字符解析为json对象的方法,如果asp使用jscript来编写服务器端代码操作json字符串就简单了,vbscript需要MSScriptControl.ScriptControl或者服务器端的jscript来作为中间体才行。

vbscript将json字符解析为json对象的方法一

使用MSScriptControl.ScriptControl组件,请用IE浏览器运行本示例,会有安全提示,需要点击“是”允许创建。

VBScript把json字符串解析成json对象的2个方法

MSScriptControl.ScriptControl组件的用法实例

MSScriptControl.ScriptControl组件属性、方法、事件介绍

<script language="vbscript">
Dim sc4Json
Sub InitScriptControl
  Set sc4Json = CreateObject("MSScriptControl.ScriptControl")
  sc4Json.Language = "JavaScript"
  sc4Json.AddCode "var itemTemp=null;function getJSArray(arr, index){itemTemp=arr[index];}"
End Sub
 
Function getJSONObject(strJSON)
  sc4Json.AddCode "var jsonObject = " & strJSON
  Set getJSONObject = sc4Json.CodeObject.jsonObject
End Function
 
Sub getJSArrayItem(objDest,objJSArray,index)
  On Error Resume Next
  sc4Json.Run "getJSArray",objJSArray, index
  Set objDest = sc4Json.CodeObject.itemTemp
  If Err.number=0 Then Exit Sub
  objDest = sc4Json.CodeObject.itemTemp
End Sub
 
Dim strTest
strTest = "{name:""alonely"", age:24,hello:function(){return '你好!';}, email:[""ycplxl1314@163.com"",""ycplxl1314@gmail.com""], family:{parents:[""父亲"",""母亲""],toString:function(){return ""家庭成员"";}}}"
Dim objTest
Call InitScriptControl'初始化MSScriptControl.ScriptControl组件
Set objTest = getJSONObject(strTest)'创建JSON对象
'对象属性操作
msgbox objTest.name&"-"&objTest.age
'数组操作
getJSArrayItem email,objTest.email,0
msgbox email
'执行方法
msgbox objTest.hello()
msgbox objTest.family.toString()
</script>

vbscript将json字符解析为json对象的方法二

用jscript作为中间体

<script language="javascript">//运行在服务器端时,增加runat="server"属性
Array.prototype.get = function(x) { return this[x]; }; 
function parseJSON(strJSON) { return eval("(" + strJSON + ")"); } 
</script> 
<script language="vbscript">
Dim json, obj 
json = "{a:""aaa"", b:{ name:""bb"", value:""text"" }, c:[""item0"", ""item1"", ""item2""]}" 
Set obj = parseJSON(json) 
</script>

这篇文章就介绍到这了,需要的朋友可以参考一下。

上一篇:vbs实现unicode和ascii编码转换
下一篇:用VBS写的VBSCRIPT代码格式化工具VbsBeautifier
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap