WIA.Vector through Enumerator returns what is not a number

When accessing the WIA members of a Vector object directly using the Vector Property or using the default property, they are visible to JScript as numbers:

var v = new ActiveXObject('WIA.Vector');
v.SetFromString('This is a test', true, false);
for (var i = 1; i<= v.Count; i+=1) {
    WScript.Echo(String.fromCharCode(v(i)));
}

However, if I use Enumerator to iterate through Vector :

var enumerator = new Enumerator(v);
enumerator.moveFirst();
while (!enumerator.atEnd()) {
    WScript.Echo(String.fromCharCode(enumerator.item()));
    enumerator.moveNext();
}

The following error appears in WScript / CScript:

enumerator.item () is not a number

typeofreturns unknown:

WScript.Echo(typeof enumerator.item());

Presumably this is some kind of automation (as in this question ), which appears only as a number, therefore typeofreturns unknown.

How can I force this value to a "real" Javascript number?


Update

VBA:

Dim v As New Vector, item As Variant
v.SetFromString "This is a test", True, False
For Each item In v
    Debug.Print TypeName(item)
Next



...

, .

+4
1

IE11. ( while)

:

console.log("- Vector -");
var v = new ActiveXObject('WIA.Vector');
v.SetFromString('This is a test', true, false);
for (var i = 1; i<= v.Count; i++) {
    console.log(v(i), String.fromCharCode(v(i)), typeof v(i));
}

console.log("- Enumerator -");
var e = new Enumerator(v);
e.moveFirst();
while (!e.atEnd()) {
    console.log(e.item(), String.fromCharCode(e.item()), typeof e.item());
    e.moveNext(); // You need this
}

:

- Vector -
84 T number
104 h number
105 i number
115 s number
32   number
105 i number
115 s number
32   number
97 a number
32   number
116 t number
101 e number
115 s number
116 t number
0  number
- Enumerator -
84 T number
104 h number
105 i number
115 s number
32   number
105 i number
115 s number
32   number
97 a number
32   number
116 t number
101 e number
115 s number
116 t number
0  number
0

Source: https://habr.com/ru/post/1693556/


All Articles