如何从JavaScript访问COM字节数组

如何从JavaScript访问COM字节数组,javascript,arrays,com,interop,Javascript,Arrays,Com,Interop,我有一个COM接口,它有一个方法,在VB中有这样一个签名: Public Function GetData() As Byte() 在C中,它显示为 public byte[] GetData(); 在javascript中,它是一个奇怪的不透明对象。索引它返回未定义的 data[1] == undefined typeof( data ) == "unknown" data.Item(1) => error 我找不到任何方法直接在javascript中使用返回的对象。但由于我处于一

我有一个COM接口,它有一个方法,在VB中有这样一个签名:

Public Function GetData() As Byte()
在C中,它显示为

public byte[] GetData();
在javascript中,它是一个奇怪的不透明对象。索引它返回未定义的

data[1] == undefined
typeof( data ) == "unknown"
data.Item(1) => error

我找不到任何方法直接在javascript中使用返回的对象。但由于我处于一个COM感知环境中,我可以使用的名称空间中有一些microsoft的东西,即类型。它允许您从javascript创建和使用VB样式的数组。并且VB数组可以理解COM字节数组。 因此,解决方案是:

var data = thingy.GetData();
var jsArray = (new VBArray( data )).toArray();