让Lua打印(functionname.variable)。

我在尝试让这个工作,但我不确定 Lua 是否支持这种类型的变量

function newUser(accountName, password)
    accountName = accountName
    password = password
end

testUser = newUser("testName" , "testPassword")

print(testUser.password)

testUser.password 在 Lua 中工作吗?

点赞
用户1009479
用户1009479

newUser 是一个函数,所以 testUser 获取到的是函数的返回值,也就是 nothing。修复这个问题的一个简单而直接的方法是返回一个表格:

function newUser(accountName, password)
    local t = {}
    t.accountName = accountName
    t.password = password
    return t
end

编辑: 或者更好的做法是根据 @lhf 的建议按照你的风格:

function newUser(accountName, password)
    return { accountName = accountName, password = password }
end
2013-10-18 13:30:53