Lua传递多维数组

嗨,我是一名相对较新的Lua程序员,我正在尝试将参数传递给一个多维数组,但我一直收到nil值错误。

我有一个多维数组:

local transform = {
  forward = {
    distance = 1,
    swing = robot.swing,
    move = robot.forward
  },
  left = {
    distance = 1,
    swing = robot.swing,
    move = robot.forward
  },
  down = {
    distance = 1,
    swing = robot.swingDown,
    move = robot.down
  }
}

我尝试这样传递数组的部分:

function testFunc(transform, direction)
  print(transform.direction.distance)
end

myFunc(transform, forward)
点赞
用户1108505
用户1108505

表达式 transform.direction 查找 transform 中键为 "direction" 的值。如果你需要获取键为 direction 变量的值,应该使用 transform[direction]

function testFunc(transform, direction)
  print(transform[direction].distance)
end
2017-08-01 22:35:13