这是我以前用VBA写的一个程序中的数据结构部分,现在想用JAVASCRIPT来写,但这种VBA的数据结构不知道怎么转化?
Public Type datastate
 value As Integer
 row As Byte
 col As Byte
 xrow As Byte
 tr As Byte
 ei As Byte
 op As String
 used As Boolean
End Type
 
Public Type linkdata
 value As Integer
 flag As String
 abcd As Boolean
 used As Boolean
 count As Byte
 ht As Byte
 fan As Byte
 databox(1 To 5) As datastate
End TypePublic Type resultdata
 value As Integer
 count As Integer
 new As Boolean
 same As Boolean
 abcd As Boolean
 fan As Byte
 samecol As Byte
 jianjs As Byte
 shengjs As Byte
 jiajs As Byte
 qsjs As Byte
 poslist As String
 marea As Long
 msum As Byte
 ef  As linkdata
 ig  As linkdata
 efhb(1 To 6) As datastate
 ighb(1 To 6) As datastate
End TypePublic Type baseinfo
 lx As Byte              
 sqs As Byte            
 xh As Long           
 pr(1 To 3) As Long     
 sjs As Long            
 scd As Byte             
 ycd As Byte            
 dbc As Byte             
 tm(1 To 5) As Byte      
 qs(1 To 7) As Byte     
 sts  As Byte            
 yts As Byte             
 jxts As Byte           
 jxabcd As Byte          
 abcd3 As Byte          
 asw As Byte             
 apos As Byte                
 bpos As Byte                
 jx1 As String               
 jx2 As String               
 gx As String                
 (1 To 4, 1 To 4) As String
 only As Boolean             
End Type
Public arr(1 To 4, 1 To 4) As datastate, arrtab(1 To 7, 1 To 5) As datastate
Public tm1 As datastate, tm2 As datastate, tm3 As datastate
Public arr1(1 To 20000) As linkdata, arr2(1 To 20000) As linkdata
Public arr3(1 To 15000) As linkdata, arr4(1 To 15000) As linkdata
Public arr5(1 To 10000) As linkdata, arr6(1 To 10000) As linkdata
Public arr7(1 To 10000) As linkdata, arr8(1 To 10000) As linkdata
Public result(1 To 3, 1 To 5000) As resultdata, sanlist(1 To 200000, 1 To 3) As resultdata
Public result1(1 To 50000) As resultdata
Public js As Long, js1 As Long, js2 As Long, js3 As Long, showjs As Long
Public swt As baseinfo

解决方案 »

  1.   

    js里面不需要声明数据类型。
    构建关联数组形式的数据的时候只需要。。
    var arr = []; var n = [];
    n['value'] = 15346;arr['fsdfs'] = 123456; //数字类型
    arr['fsdfd'] = n; //数组类型
      

  2.   

    以下为例:
    Public Type datastate
     value As Integer
     row As Byte
     col As Byte
     xrow As Byte
     tr As Byte
     ei As Byte
     op As String
     used As Boolean
    End Type可改写成:
    var datastate ={
    value:0,
    row=0;
    col=0;
    xrow=0;
    tr=0;
    ei=0;
    op=""
    used:false;
    };
    其余类似.普通类型,如 Public js As Long 用 var js=0;