2013-07-15 2 views
2

브라우저에 내용을 표시 할 수 있도록 Lua 테이블의 내용을 HTML 파일로 내보내는 중입니다. 지금은 함수 인수를 테이블 키로 전달하는 데 문제가 있습니다. Lua pass 함수 인자를 테이블 키로 사용

나는 같은 스파 스 테이블이 :

map = {} 
for x = 1, 20 do 
    map[x] = {} 
    for y = 1, 20 do 
     map[x][y] = {} 
     map[x][y].node = math.random(1,20) 
     map[x][y].image = "path/to/image.png" 
    end 
end 

나는 같은 내 함수에 테이블을 전달합니다 htmParser을 : _dumpSparseToHTML (지도, 20, 20)지도 = 내가 원하는 테이블을 통과, (20) , 20 = 배열의 너비와 높이. _dumpSparseToHTML 어딘가에서 v.node 및 v.image 값을 파일에 씁니다. 어떻게 테이블의 키 이름을 모른 채 똑같은 것을 처리합니까? 예를 들어, map은 map [x] [y] .value, map [x] [y] .gfx, map [x] [y] .nodeType을 포함 할 수 있으며 htmParser로 전달하려고합니다 : _dumpSparseToHTML (map, 20 , 20, value, gfx, nodeType 등).

루아는 함수를 _dumpSparseToHTML (map, 20, 20, ...)으로 정의하여 가변 인수를 처리 할 수 ​​있음을 알고 있습니다.

--_table = map 
for i,v in ipairs(arg) do 
    file:write("<td>".._table[x][y].v.."</td>) 
end 

내가 오류는 다음과 같습니다 : 나는 다음을 수행하려고 노력했다. "필드에 'V'(A 전무 값)를 연결하는 시도 는 그래서, 내 질문은 : I 가변 인자를 전달 어떻게 테이블 키로?

답변

4

당신은 그것에 대해 _table[x][y][v]를 사용해야합니다. _table[x][y].v_table[x][y]["v"]입니다.

관련 문제