Хаки, но stripting.dictionary::items
возвращается как безопасный массив, поэтому при некоторых обстоятельствах (запросы ADSI) работает следующее, однако YMMV значительно пробует это с двоичными данными.
function getSafeArray(jsArr) {
var dict = new ActiveXObject("Scripting.Dictionary");
for (var i = 0; i < jsArr.length; i++)
dict.add(i, jsArr[i]);
return dict.Items();
}
//to a safe array
var safearr = getSafeArray([11,22,33]);
//back to a js array
var jsArr = new VBArray(safearr).toArray();
log(jsArr[2])