JavaScript中所有的数据都可以是对象,除了一些内置的对象外,还可以创建新的对象。
当创建新的对象时,JavaScript对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:
var person={firstname:"Bill", lastname:"Gates", id:5566};
当要访问对象的属性时,可以有以下两种方式:
name=person.lastname;
name=person[“lastname”];
可以通过以下的vba代码解析JavaScript对象
Sub QQ1722187970()
Dim sJS As String
Dim arrElement
Dim obj()
'JS对象
sJS = "{firstname:""Bill"", lastname:""Gates"", id:5566}"
Dim oHtml As Object
'定义HtmlDocument对象
Set oHtml = CreateObject("htmlfile")
Dim oWindow As Object
Set oWindow = oHtml.parentWindow
With oWindow
.execScript "var obj=" & sJS
'用callbyname获取js对象的属性值
Debug.Print VBA.CallByName(.obj, "firstname", VbGet)
End With
End Sub
上文中使用IHTMLWindow2接口的execScript方法运行JavaScript语句。


发表评论