2009-07-22 49 views
5

Tôi biết điều này có vẻ như một câu hỏi ngớ ngẩn nhưng làm thế nào để tôi tìm kiếm một bảng lua cho một mục nhất định? giả sử tôi có một cái bàn như thế này:Tra cứu bảng Lua

 
local table = { 
    itemA = 0.8, 
    itemB = 1.2, 
    itemC = 1 
} 

Có, nói, hàm có tên table.find hoặc gì đó? Nó cũng trễ ở đây vì vậy tôi không nghĩ quá rõ ràng vào lúc này ...

+5

Tôi đã sửa lỗi cú pháp trong mẫu của bạn ... Câu hỏi ngớ ngẩn duy nhất là câu hỏi bạn không hỏi. Đặc biệt là khi học một ngôn ngữ mới. – RBerteig

+0

Không chính xác học nó nhưng tôi đang cố gắng để có được trở lại vào nó gần đây, tôi sử dụng nó và tắt. – RCIX

Trả lời

7

Bạn có thể tra cứu các mục trong bảng hoặc sử dụng [] điều hành:

x=table["itemA"] 

hoặc bằng cách sử dụng toán tử .:

x=table.itemA 

Đã chỉnh sửa vì mã gốc bây giờ là cú pháp chính xác.

+4

+1. Lưu ý rằng dấu chấm chỉ hoạt động nếu khóa xảy ra là giá trị chuỗi được tạo thành từ các ký tự định danh hợp pháp. Các bảng có thể được lập chỉ mục theo các giá trị của bất kỳ loại nào (ngoại trừ nil), hầu hết trong số đó sẽ yêu cầu ký hiệu '[]'. – RBerteig

+0

Điểm tốt (không có ý định chơi chữ;)), cảm ơn! –

+0

Con trai tôi phải mệt mỏi vì không thấy điều đó, cảm ơn vì sự giúp đỡ! – RCIX